Newsgroups: comp.lang.c++,comp.lang.lisp
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!howland.reston.ans.net!spool.mu.edu!agate!darkstar.UCSC.EDU!news.hal.COM!decwrl!sunsite.doc.ic.ac.uk!uknet!festival!edcogsci!jeff
From: jeff@aiai.ed.ac.uk (Jeff Dalton)
Subject: Re: Comparing productivity: LisP against C++ (was Re: Reference 
Message-ID: <D182M9.By1@cogsci.ed.ac.uk>
Sender: usenet@cogsci.ed.ac.uk (C News Software)
Nntp-Posting-Host: bute.aiai.ed.ac.uk
Organization: AIAI, University of Edinburgh, Scotland
References: <3d86vh$1na@Mars.mcs.com> <D15BJ1.5Gq@research.att.com> <hbakerD15HAI.GCL@netcom.com>
Date: Thu, 22 Dec 1994 17:15:45 GMT
Lines: 37
Xref: glinda.oz.cs.cmu.edu comp.lang.c++:104553 comp.lang.lisp:16157

In article <hbakerD15HAI.GCL@netcom.com> hbaker@netcom.com (Henry G. Baker) writes:
>In article <D15BJ1.5Gq@research.att.com> ark@research.att.com (Andrew Koenig) writes:
>>In article <3d86vh$1na@Mars.mcs.com> tmoog@MCS.COM (Thomas H. Moog) writes:
>>
>>> There is a way to measure language complexity to one significant
>>> digit: the size of a good manual for the language.  The essentials for
>>> SmallTalk are covered in about 100 pages of the blue book by Goldberg
>>> (the rest is the "standard library" and details of implementation).
>>> The C++ ARM is about 400 pages and is much more difficult reading then
>>> Goldberg.  How large is a Lisp manual ?
>>
>>The Common Lisp manual is about 1,100 pages.
>
>I know. :-(  It weights 2 lbs., 12 oz.  If you drop it out of a window
>onto someone, it would probably kill them.

I believe that *properly presented* CL is not so bad.  I have a fair
amount of experience in teaching and using CL and well as in devising
subsets (ISO stds work), so this is not just a guess.  OTOH, I don't
think I've figured out the best way to present it yet.

However, much of CL can be seen as a library.  For instance, all of
the multi-keyword functions can be seen this way.  CL does not provide
a very good set of primitives, since the design is aimed at the
"right" user-level functionality.  So there's plenty of room for 
improvement.  But if I want to test out something non-Lispy (eg
using sokets) I usually build something in Lisp + C (in AKCL, which
makes this fairly easy).

Of course, I'm just one person, but I have written fairly large
amounts of code in assembler and in various higher-level languages
(such as PL/1 subset G and C) and I've written a Lisp-to-C compiler,
so I think I am pretty well placed to compare Lisp w/ other languages.

-- jeff


