yeah, so? (thanks, Will.)
the Common Lisp HyperSpec, published by Harlequin, is a hypertext version
of the standard on the Net, including the X3J13 committee issues. I use
both the HyperSpec and the paper version daily.
if you don't know how something is supposed to work, you will necessarily
use it wrongly. if you know exactly how a language works, you will not be
bothered by its restrictions, no matter which language, but can, instead,
focus on expressing yourself completely within it. it is nigh impossible
to come to peace with the specification for most programming languages, so
the value of having the standard as your guide is underappreciated until
you realize that money cannot buy what that document contains.
we spend a large fraction of our lives getting very expensive education,
then we take jobs that require enormous sacrifices of our selves. many buy
homes with money thus earned. all are investments in future stability.
all are deemed natural and necessary in a civilized society. much of our
political ideas revolve around stability. the standard specification of a
programming language is the embodiment of such stability for the employment
of a programmer's skills. only on stable ground are you free to roam.
visit the Common Lisp HyperSpec at http://www.harlequin.com/books/HyperSpec/
#\Erik
--
I'm no longer young enough to know everything.
The ANSI Common Lisp standard is 1200 pages long, about 5 times the size of
the C standard. And since ANSI standards are a niche product, marketed to
businesses rather than the mass market, you don't see consumer prices.
--
Barry Margolin
BBN Corporation, Cambridge, MA
bar...@bbnplanet.com
(BBN customers, call (800) 632-7638 option 1 for support)
> In article <33403F...@CS.Berkeley.EDU>,
> Lewis Stiller <sti...@CS.Berkeley.EDU> wrote:
> >It apparently costs US $350.00 to buy a copy of the ANSI Lisp standard
> >(www.ansi.org). At first I thought this was impossible, that I was
> >misreading, but I am told that it is true. (The C standard is "only"
> >$130.00).
>
> The ANSI Common Lisp standard is 1200 pages long, about 5 times the size of
> the C standard. And since ANSI standards are a niche product, marketed to
> businesses rather than the mass market, you don't see consumer prices.
> --
Why the premium for a language that was supposed to appeal to everyone,
including non-programmers? Just questioning your mentality (in a good
sense) about this...
Daitaro
The people who make the standards are the Lisp vendors. They have no say
in how ANSI does its business. ANSI has never, to my knowledge, expressed
an ounce of care about what effect their pricing to the Lisp marketplace.
As far as I've seen, they effectively just act as a "publisher", and one
that expends little energy talking to its authors to find out how to position
its books at that.
The Common Lisp HyperSpec (TM) was ready to go out the door over a year before
it did, and most of what held it up was legality. I'm not going to get into
the legal issues here, but increasingly I think I owe the public an accounting
of what happened and I will take it as an action item to write something up
detailing the entire sad saga.
For the purposes of this discussion, however, suffice it to say that when you
see the ANSI standard overpriced, the only senses in which the LISP industry
contributed to that were these:
- The standard is indeed big. We felt that was necessary to completely
document the language. Languages like Scheme indeed are smaller textually
but that is becuase they (a) provide less functionality and (b) provide
fewer examples and (c) provide less specificiation of porting issues.
Each and every one of these we felt were critical. I guess if it were
shorter, the price would be lower. But then, it might not be as solid or
as usable.
- The standard is, I think, readable. Not all language standards have been.
Some are written in specification languages that make them not appeal
directly to the public. I like to make the analogy to "traffic law" which
I once had the misfortune to have to research. The case law in
Massachusetts is enormous and complicated and weirdly worded and not for
the faint of heart. When you learn to drive, they give you a user's guide
not a copy of the traffic law. I believe ANSI's intent was that you would
get a user's guide, and they were not prepared to be a supplier of a direct
user commodity--especially at that size. If we had made the standard
less approachable, this might not have been an issue. :-)
Personally, I think the CLHS suffices. I use it almost exclusively. For
those who need portability, there are enough powerbooks out there that people
can carry it around. And a powerbook with a running lisp and a CLHS is
lighter than the spec! But more than that, 1150 pages (the size of the ANSI
spec--I saved a little over the 1350 page drafts by careful changes to "book
design" at the last minute) is still a lot of "dead tree" and even if it's not
as convenient to read an online book as a paper book, I feel strongly that
it's time for the community to reject paper wholesale as a way of
communicating. Let the forests replenish and let someone invent the Sony
walkbook.
Bottom line? The Lisp industry will sell you all kinds of books at much less
than $350. Buy them to learn the language. Use the CLHS as a reference to
look up the nitpicky details. ANSI is not the Lisp industry--it's just a
clumsy tool the Lisp industry tried to use, with very mixed success, and it
does not speak for the Lisp industry.
See http://www.harlequin.com/books/HyperSpec for the download info.
It takes 16MB on disk, but it's worth it if you have to deal with the
spec much at all. If I do say so myself, it's a mega-cool document with
105 kilohyperlinks (<-- how often do you get to use that word? :-)
See http://www.harlequin.com/books/HyperSpec/FrontMatter/ to browse
Harlequin's webbed copy. (But keep in mind that it will run much faster
if you download your own copy to your local web.)
See http://www.harlequin.com/books/HyperSpec/FrontMatter/About-HyperSpec.html#Legal
for information about the legal restrictions on those who do downloading.
I think most people will find them entirely reasonable. They're mostly about
maintaining the integrity of the document; there's no dollars involved.
The Common Lisp HyperSpec is NOT the ANSI CL spec, but it is derived from it,
and is very similar (with only minor textual tweaks here and there to make it
work webbed). If you need a truly official source, the ANSI spec is all you
can do. But for most normal purposes, the CLHS is fine and at the price
(FREE), it's hard to beat. It also comes cross-indexed against many design
documents that the X3J13 subcommittee used, so you can learn about how some
of the odd features of the language got to be that way.
I hope this doesn't seem like too much of a self-serving plug, but gee--
Harlequin and I tried to make this as much of a public service as we could,
and I don't exactly get royalties from it, so I'm entitled to make a fuss
over it once in a while, I think.
It's not *my* mentality, it's ANSI's. Their target market is businesses,
not end users.
Consider their history. Do the people who use (i.e. sit on) office chairs
need a copy of the ANSI standard for office chairs? Do people who write on
paper need a copy of the ANSI standard for paper sizes? I'll bet you've
been typing for years but don't have a copy of the ANSI standard for
keyboard layout. Although these items are used heavily by the mass market,
the standards are intended primarily for *manufacturers*, so that they can
ensure that their products conform.
End users are not expected (by ANSI) to need to consult a language
standard. They use reference books, tutorials, etc.
>
> Oh, I realized after the fact that some reading this might not know
> what the Common Lisp HyperSpec (TM) is. As you could probably tell
> from my last post, it is not hardcopy. It is available on the web and
> you can download a copy for your own use or browse it at Harlequin.
> (There may be other mirrors, too--we don't keep track of that.)
>
> See http://www.harlequin.com/books/HyperSpec for the download info.
> [...]
> I hope this doesn't seem like too much of a self-serving plug, but gee--
> Harlequin and I tried to make this as much of a public service as we could,
> and I don't exactly get royalties from it, so I'm entitled to make a fuss
> over it once in a while, I think.
I think it deserves all the plugging and publicity it can get,
plus you can tie it into Emacs' W3 interface to get online doc
for Common Lisp functions, variables, etc. at a keystroke... brilliant!
It certainly has my vote and my thanks to Kent and Harlequin for making
this freely available.
Guy Footring
gfoo...@ford.com
I wrote an interface between CLHS and the Franz, Inc. "fi" package for
Emacs some time ago. it works very well for me. it can be picked up from
ftp.naggum.no:/pub/emacs/hyperspec.el
http://www.naggum.no/~emacs/hyperspec.el
it's 48K large with all the symbols and URL fragments as data. it allows
you to use a local copy or the master version at Harlequin.
The ANSI spec is indeed very well written, very clear, and very
complete. Yes, there are issues enough to keep a language lawyer busy,
and I have a long file of issues I'd like to someday discuss in the
appropriate forum. Nonetheless, I do not believe I have ever seen a
better specification.
Not having served on the committee, I may never fully appreciate Kent's
personal impact. However, what I have come to be aware of in the past
two years suggests that Kent's contribution to the Common Lisp
literature is perhaps comparable to that of Guy Steele's.
And then there is the HyperSpec. Every Lisp user should have a bookmark
to it, or better yet, dowload a copy. Barry Margolin makes the very
good point that specifications are intended for implemplementers and
other specific uses, and not for end users, and yet, I feel that the
HyperSpec IS appropriate for the highly skilled programmers that tend to
be Lisp users.
Kent, I can't thank you enough.
Do you have any plans to make a hyper-spec of the MetaObject Protocol?
I believe the (Tex ?) source is at
http://www.parc.xerox.com/spl/projects/oi/
Kent Pitman wrote:
>
> In article <daiyanh-0204...@38.11.35.140> dai...@mindspring.com
> (Daitaro Hagihara) writes:
>
> > In article <5hsrc7$k...@pasilla.bbnplanet.com>, Barry Margolin
> > <bar...@bbnplanet.com> wrote:
> >
> > > In article <33403F...@CS.Berkeley.EDU>,
> > > Lewis Stiller <sti...@CS.Berkeley.EDU> wrote:
> > > >It apparently costs US $350.00 to buy a copy of the ANSI Lisp standard
> > > >(www.ansi.org). At first I thought this was impossible, that I was
> > > >misreading, but I am told that it is true. (The C standard is "only"
> > > >$130.00).
> > >
> > > The ANSI Common Lisp standard is 1200 pages long, about 5 times the size of
> > > the C standard. And since ANSI standards are a niche product, marketed to
> > > businesses rather than the mass market, you don't see consumer prices.
> > > --
> >
> > Why the premium for a language that was supposed to appeal to everyone,
> > including non-programmers? Just questioning your mentality (in a good
> > sense) about this...
>
<BODY BGCOLOR="#c0c0c0">
at the start of each page. I find black text on a fairly dim gray
background to be less than optimal. I wish it would just say
<BODY>
and let my browser settings do the right things for my eyes.
Unfortunately, the copyright does not allow me to fix this problem
without re-implementing Netscape to have user settings take preference
over document settings.
Bill
--
Bill Janssen <jan...@parc.xerox.com> (415) 812-4763 FAX: (415) 812-4777
Xerox Palo Alto Research Center, 3333 Coyote Hill Rd, Palo Alto, CA 94304
URL: ftp://ftp.parc.xerox.com/pub/ilu/misc/janssen.html
well, I find colors completely useless, so I made a minor change to
/usr/X11R5/lib/X11/app-defaults/Netscape:
! Normally, the user-specified colors and backgrounds will only be used when
! viewing documents which did not specify their own colors and backgrounds.
! If this resource is set to False, then the user-specified colors and
! backgrounds will always be used, regardless of the options specified in
! the document itself.
!
*documentColorsHavePriority: False
you may have to specify all the colors in the same file. if you're under
the influence of Bill Gates, you may be out of luck. I don't know or care.
of course, Netscape being a mass-market software vendor, this doesn't work
for <FONT COLOR="unreadable">...</FONT>. but what could you expect?
I *did* serve on the committee. While I don't want to slight the other
members of the committee, I agree that we all owe an enormous debt to Kent.
We originally had a tech writer serving as the document editor, but things
didn't really start sailing until Kent took over. Not only is he an expert
in the Lisp language, he was also able to make use of his programming skill
to automate the production of the standard. He made extensive use of
generic markup (using TeX macros); this was useful when we needed to find
cross-references during the standardization process, and he later took
advantage of this when translating the document into HTML (it was 90%
automated).
>And then there is the HyperSpec. Every Lisp user should have a bookmark
>to it, or better yet, dowload a copy. Barry Margolin makes the very
>good point that specifications are intended for implemplementers and
>other specific uses, and not for end users, and yet, I feel that the
>HyperSpec IS appropriate for the highly skilled programmers that tend to
>be Lisp users.
Just to clarify, I was not stating *my* opinion of the value of the
standard, I was describing ANSI's attitude. Early language standards
tended to be inscrutible (ANSI PL/I is supposed to be the prime example --
even though I was a PL/I programmer for 6 years I never saw it), and ANSI
never learned better.
I have a bookmark to the HyperSpec (unfortunately, I do fairly little
programming these days, and no Lisp outside my .emacs) and also to the
online version of CLtL. In fact, the HTML form really makes these versions
useful -- cross-references are easily followed.
Erik> I wrote an interface between CLHS and the Franz, Inc. "fi"
Erik> package for Emacs some time ago. it works very well for me. it
Erik> can be picked up from
Erik> ftp.naggum.no:/pub/emacs/hyperspec.el
Erik> http://www.naggum.no/~emacs/hyperspec.el
There is also the dpANS.info which is kind of handy for using in
Emacs. I am not sure how it compares, content-wise, with the
hyperspec. I don't know where my copy came from, but appears to be
the same as the info package available with GCL at:
<ftp://ftp.cli.com/pub/gcl/gcl.info.tgz>
--
Russell Senior
sen...@teleport.com
Both of you should make sure to get the info to Mark Kantrowitz so it can be
in the Lisp FAQ if it's not. Also, you should check at the ALU home page
and see if there's a "tools" listing there; if there is not, one should be
created. If it is, you should add your tools.
Pawing through newsgroups, even with Deja News to help, to find info like
this is just plain hard, and it's worth making sure it's indexed properly in
better places.