[math-fun] Property lists on INT's and FLONUM's ???
Subject: [math-fun] Property lists on INT's and FLONUM's ???
From: Henry Baker
Date: Sat, 09 Mar 2013 21:13:33 -0800
It is interesting to me that MIT Lisp didn't use a true hash table for its "OBLIST" until
the late 1960's with Maclisp. This is true even though Ershov (in his _1958_ CACM paper)
showed how to do _Hash CONS_ (!!)
http://home.pipeline.com/~hbaker1/othergc/Ershov-Hash.txt
Maclisp was able to uniquize "smallnums" by simply allocating them in a fixed portion
of the address space, but Lisps basically abandoned uniquizing fixnums and bignums, even
though it could have been done with some reasonable efficiency using hash consing.
I guess that the property lists for integers (and floats) were never used very much, so
the ratio of work for uniquizing was never paid back by increased efficiency of accessing
the property list.
In modern Common Lisp, one can create one's own hash tables indexed by integers, so one
can create one's own "property lists" for integers if one so desires.
At 05:56 PM 3/9/2013, Whitfield Diffie wrote:
>> I just came across the 1960 "Lisp 1 Programmer's Manual", which I'd never seen before:
>> As this manual clearly describes, both integers and floats had _property lists_ and were _uniquized_.
>
>> Q: When did Lisp numbers lose their property lists ?
>> Q: Did any other Lisps keep property lists for numbers ?
>> Q: Were Lisp property lists ever used for interesting things: e.g., storing primality, factors, etc. ?
>
> I had Lisp in a programming course as a freshman in 1961 and began
>programming seriously in Lisp under Roland Silver in 1965. I do not
>recall property lists on numbers. I suspect it was a quick
>implementation hack for the first version and was eliminated in favor
>of some faster way of doing arithmetic.