Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ZetaLisp top level environment

30 views
Skip to first unread message

Barry Watson

unread,
Sep 23, 2002, 6:17:35 AM9/23/02
to
Whilst reading Queinnec on the train this morning I was surprised to
learn that ZetaLisp had over 10,000 functions in the top level
environment. Is this really true? I mean over 10,000???

Barry

Espen Vestre

unread,
Sep 23, 2002, 6:35:40 AM9/23/02
to
Barry Watson <Barry....@uab.ericsson.se> writes:

That's less than half of the number of fboundp symbols in
LispWorks (linux), if I have counted right.
--
(espen)

Will Deakin

unread,
Sep 23, 2002, 6:41:50 AM9/23/02
to
Why not? Compare this with the number of functions in the standard unix
c-library or your OS du jour.

:)w

Barry Watson

unread,
Sep 23, 2002, 6:46:57 AM9/23/02
to

nowhere near 10,000. That's alot of functions, alot.

Barry Watson

unread,
Sep 23, 2002, 6:49:11 AM9/23/02
to

Queinecc also says that Common Lisp has 700, LeLisp more than 1,500.
What's in LispWorks that isn't in Common Lisp? It can't be all the
c(a|d)*r you'll ever need.

ilias

unread,
Sep 23, 2002, 7:07:53 AM9/23/02
to

i'm a lisp-novice.

and i don't know ZetaLisp.

but 10.000 functions?

sounds like bad design.

Tim Bradshaw

unread,
Sep 23, 2002, 6:59:05 AM9/23/02
to
* Espen Vestre wrote:

> That's less than half of the number of fboundp symbols in
> LispWorks (linux), if I have counted right.

But not all those are exported into the default package, I bet.

There are 700-and-something symbols exported from the CL package, but
I bet your average implementation has many times that number of
symbols involved in *implementing* CL.

The right count for an environment would be something like `exported
symbols from documented packages' I think.

--tim

Will Deakin

unread,
Sep 23, 2002, 7:02:22 AM9/23/02
to
Barry Watson wrote:
> Queinecc also says that Common Lisp has 700, LeLisp more than 1,500.
> What's in LispWorks that isn't in Common Lisp?
Hmm. I'm puzzled by this too.

These smaller numbers are only the functions that are in the standard.
What about all the internal functions? For lispworks there are *at
least* the sys and lw packages. All of which contain hundreds of
functions. So if you take all of the functions in the function
`namespace' -- internal or external -- then you have a whole lot of
things going on.

If you don't have any kind of function hiding or packages or namespaces
or whatever (I don't know if this is true or not in zetalisp) plus the
that it is designed to be an OS lisp you will have a big number `at the
top level.'

:)w

Espen Vestre

unread,
Sep 23, 2002, 7:08:28 AM9/23/02
to
Tim Bradshaw <t...@cley.com> writes:

> * Espen Vestre wrote:
>
> > That's less than half of the number of fboundp symbols in
> > LispWorks (linux), if I have counted right.
>
> But not all those are exported into the default package, I bet.

Sure. Only about 1000 are exported into the USER package.

(I wonder what "had over 10,000 functions in the top level environment"
really means?)
--
(espen)

Barry Watson

unread,
Sep 23, 2002, 7:14:42 AM9/23/02
to
Espen Vestre wrote:
>
> (I wonder what "had over 10,000 functions in the top level environment"
> really means?)

It's page 25 of the English translation. He used the phrase "global
environment" and not "top level" as I wrote but I don't see that making
a difference. I read it to mean functions available to the programmer.

Bruce Stephens

unread,
Sep 23, 2002, 7:35:13 AM9/23/02
to
Barry Watson <Barry....@uab.ericsson.se> writes:

The Emacs I'm using to construct this reply seems to have about 10000
functions available (that is, either built-in, loaded or set up for
autoload).

Barry Watson

unread,
Sep 23, 2002, 7:35:42 AM9/23/02
to
I found a break down of "The Symbolics-Lisp Environment" here

http://kogs-www.informatik.uni-hamburg.de/~moeller/symbolics-info/symbolics-tech-summary.html

maybe 10,000 isn't that unreasonable looking at what it contained.

Raymond Wiker

unread,
Sep 23, 2002, 7:37:26 AM9/23/02
to
Barry Watson <Barry....@uab.ericsson.se> writes:

Note that this probably means both exported and internal
functions. Also, the ZetaLisp environment includes the file system,
the documentation subsystem, the editor, several graphics packages,
networking and various OS-type things.

--
Raymond Wiker Mail: Raymon...@fast.no
Senior Software Engineer Web: http://www.fast.no/
Fast Search & Transfer ASA Phone: +47 23 01 11 60
P.O. Box 1677 Vika Fax: +47 35 54 87 99
NO-0120 Oslo, NORWAY Mob: +47 48 01 11 60

Try FAST Search: http://alltheweb.com/

Barry Watson

unread,
Sep 23, 2002, 7:38:04 AM9/23/02
to
Bruce Stephens wrote:
>
> The Emacs I'm using to construct this reply seems to have about 10000
> functions available (that is, either built-in, loaded or set up for
> autoload).

How did you find that out?

Bruce Stephens

unread,
Sep 23, 2002, 8:05:32 AM9/23/02
to
Barry Watson <Barry....@uab.ericsson.se> writes:

C-h f ?

Then look at the completion buffer, which (for me) has over 5000
lines, in two columns.

Eric Marsden

unread,
Sep 23, 2002, 10:53:28 AM9/23/02
to
>>>>> "bw" == Barry Watson <Barry....@uab.ericsson.se> writes:

bs> The Emacs I'm using to construct this reply seems to have about 10000
bs> functions available (that is, either built-in, loaded or set up for
bs> autoload).

bw> How did you find that out?

in my Emacs 21.2, using the cl package:

(loop for sym being the present-symbols
count (fboundp sym))
=> 12088


More-symbols-than-yours trivia:

ECL 0.5 1300
CLISP 2.28 2000
GCL 2.5 5500
OpenMCL 0.10 5600
ACL 6.1/trial 6700
SBCL 0.7.8 10100
CMUCL 18d 10800
CMUCL 18d CLX/CLM/Hemlock 15700

--
Eric Marsden <URL:http://www.laas.fr/~emarsden/>

Tim Bradshaw

unread,
Sep 23, 2002, 11:31:24 AM9/23/02
to
* Espen Vestre wrote:

> (I wonder what "had over 10,000 functions in the top level environment"
> really means?)

Well one thing is that I'm not *sure* zetalisp always had packages. I
think it did at some point (certainly Genera had a very elaborate
package system), but maybe early on it didn't, so there were really a
lot of symbols `defined' in the single namespace.

Similarly, InterLisp didn't have a package system I think, and on the
Xerox D machines, which did have a package system by Medley anyway,
there was a single package called IL which automagically exported all
its symbols, and had the whole of InterLisp in it. IL probably
contained a fair number of symbols...

--tim

Will Deakin

unread,
Sep 23, 2002, 11:37:42 AM9/23/02
to
Tim wrote:
> Well one thing is that I'm not *sure* zetalisp always had packages. I
> think it did at some point (certainly Genera had a very elaborate
> package system), but maybe early on it didn't, so there were really a
> lot of symbols `defined' in the single namespace.
Sounds like I may not have been barking completely up the wrong tree ;)

AFAICS having n-thousand functions -- most of which are internal but not
hidden -- would not come as a great suprise. But then again from time to
time I have had a look at the cmucl source code...

:)w

Christopher C. Stacy

unread,
Sep 23, 2002, 1:12:22 PM9/23/02
to
>>>>> On Mon, 23 Sep 2002 12:17:35 +0200, Barry Watson ("Barry") writes:
Barry> Whilst reading Queinnec on the train this morning I was surprised to
Barry> learn that ZetaLisp had over 10,000 functions in the top level
Barry> environment. Is this really true? I mean over 10,000???

(I am unfamiliar with the author; what were you reading?)
I don't know what point he was trying to make or exactly what is
meant here by "top level environment", but since it's Lisp, one
could obviously call any function from the top-level listener.
Maybe he meant external symbols; in the entire operating system
with many of the layered products loaded, I could believe 10,000.

Christopher C. Stacy

unread,
Sep 23, 2002, 1:13:28 PM9/23/02
to
>>>>> On 23 Sep 2002 16:31:24 +0100, Tim Bradshaw ("Tim") writes:

Tim> * Espen Vestre wrote:
>> (I wonder what "had over 10,000 functions in the top level environment"
>> really means?)

Tim> Well one thing is that I'm not *sure* zetalisp always had packages. I
Tim> think it did at some point (certainly Genera had a very elaborate
Tim> package system), but maybe early on it didn't, so there were really a
Tim> lot of symbols `defined' in the single namespace.

The package system was pretty early on (certainly by 1978).

Jens Axel Søgaard

unread,
Sep 23, 2002, 1:29:29 PM9/23/02
to
Christopher C. Stacy wrote:
>>>>>> On Mon, 23 Sep 2002 12:17:35 +0200, Barry Watson
>>>>>> ("Barry") writes:
> Barry> Whilst reading Queinnec on the train this morning
> I was surprised to Barry> learn that ZetaLisp had over
> 10,000 functions in the top level Barry> environment. Is
> this really true? I mean over 10,000???
>
> (I am unfamiliar with the author; what were you reading?)

Then you must have missed this wonderful book:

http://youpou.lip6.fr/queinnec/WWW/LiSP.html

His homepage:

http://youpou.lip6.fr/queinnec/WWW/Queinnec.html

--
Jens Axel Søgaard


Kaz Kylheku

unread,
Sep 23, 2002, 2:05:45 PM9/23/02
to
ilias <at_...@pontos.net> wrote in message news:<amms69$gaq$2...@usenet.otenet.gr>...

> i'm a lisp-novice.
>
> and i don't know ZetaLisp.
>
> but 10.000 functions?
>
> sounds like bad design.

Nobody is interested in your uninformed opinions about works produced
by your intellectual superiors.

You are a dripping, wet sack of llama excrement, and I'm sure I'm not
alone in looking forward to your inevitable disappearance from this
newsgroup.

ilias

unread,
Sep 23, 2002, 2:52:32 PM9/23/02
to
Kaz Kylheku wrote:
> ilias <at_...@pontos.net> wrote in message news:<amms69$gaq$2...@usenet.otenet.gr>...
>
>>i'm a lisp-novice.
>>
>>and i don't know ZetaLisp.
>>
>>but 10.000 functions?
>>
>>sounds like bad design.
>
> Nobody is interested in your uninformed opinions about works produced
> by your intellectual superiors.

I am a nobody.

and 10.000 functions sound like a bad design.

>
> You are a dripping, wet sack of llama excrement, and I'm sure I'm not

"a dripping, we sack of llama excrement".

you are a very creatve person.

> alone in looking forward to your inevitable disappearance from this
> newsgroup.

you are not alone.

that is important.

Erik Naggum

unread,
Sep 23, 2002, 4:45:55 PM9/23/02
to
* Tim Bradshaw

| There are 700-and-something symbols exported from the CL package

978, actually. CLtS 1.9 Symbols in the Common-Lisp package.

--
Erik Naggum, Oslo, Norway

Act from reason, and failure makes you rethink and study harder.
Act from faith, and failure makes you blame someone and push harder.

Tim Bradshaw

unread,
Sep 23, 2002, 5:30:00 PM9/23/02
to
* Erik Naggum wrote:R

* Tim Bradshaw
> | There are 700-and-something symbols exported from the CL package

> 978, actually. CLtS 1.9 Symbols in the Common-Lisp package.

Well... 700 to an order of magnitude, anyway and who ever does sums
more accurately than that (:-).

--tim

Karsten Poeck

unread,
Sep 23, 2002, 6:18:14 PM9/23/02
to
oops 978 is correct I only counted funcitions not symbols

Karsten
PS: Still interested what CLtS 1.9 means.

"Erik Naggum" <er...@naggum.no> wrote in message
news:32418027...@naggum.no...

Erik Naggum

unread,
Sep 23, 2002, 6:33:48 PM9/23/02
to
* "Karsten Poeck" <vs1...@terra.es>
| what is CLtS 1.9? Steele II?

Common Lisp the Standard.

| I count about 758 exported symbols in LW and ACL as in the appendix

No, you do not. (Which appendix?) What the hell was that list of symbols
for? Post the code you used, instead. It is probably broken.

Erik Naggum

unread,
Sep 23, 2002, 7:20:19 PM9/23/02
to
* "Karsten Poeck" <vs1...@terra.es>

| PS: Still interested what CLtS 1.9 means.

So impatient. In case the 1.9 is still a mystery, it is clause 1.9, which
had the rest of the line as its title. Please familiarize yourself with the
standard. There really is no substitute for knowing it.

Joe Marshall

unread,
Sep 24, 2002, 1:21:43 AM9/24/02
to

"Tim Bradshaw" <t...@cley.com> wrote in message news:ey3elbk...@cley.com...

Just write it 7.0e2 and mumble something about round-off error.


Tim Bradshaw

unread,
Sep 24, 2002, 2:57:12 AM9/24/02
to
* Joe Marshall wrote:
> Just write it 7.0e2 and mumble something about round-off error.

Well, I'm happy if I can establish a finite bound.

Torsten

unread,
Sep 24, 2002, 6:15:21 AM9/24/02
to
Karsten Poeck wrote:

> oops 978 is correct I only counted funcitions not symbols

> PS: Still interested what CLtS 1.9 means.

Common Lisp the Standard section 1.9. The title of that section
is "Symbols in the COMMON-LISP Package" and its first paragraph
states that it contains "a complete enumeration of the 978
external symbols in the COMMON-LISP package". In other words, you
didn't have to do any counting yourself.

--
Torsten

Mark Dalgarno

unread,
Sep 24, 2002, 8:22:18 AM9/24/02
to
Barry Watson <Barry....@uab.ericsson.se> writes:

This document notes that "Over a half-million lines of code are
provided with the basic system. Much of this code is available in the
form of sources. This includes over 10,000 compiled functions to which
users have full access."

IIRC the hardcopy system index was about 2 inches thick at Genera 7.

Mark

Carl Shapiro

unread,
Sep 24, 2002, 10:35:43 AM9/24/02
to
Mark Dalgarno <Mark_D...@scientia.com> writes:

> IIRC the hardcopy system index was about 2 inches thick at Genera 7.

Very close... it is almost exactly 1.5 inches thick.

0 new messages