merits of Lisp vs Python

Rob Thorpe rthorpe at realworldtech.com
Wed Dec 20 13:00:30 EST 2006


Anders J. Munch wrote:
> jayessay wrote:
>   > Please note: GC is not part of CL's definition.  It is likely not part
> > of any Lisp's definition (for reasons that should be obvious), and for
> > the same reasons likely not part of any language's definition.
>
> Really?  So how do you write a portable program in CL, that is to run
> for unbounded lengths of time?

You can't.

The thing about the spec not defining GC is almost a bit of humour.
No-one would use an implementation with no GC.

The issue with specifying it is: How would you do it?  The memory used
by a program is an aspect of the language implementation and the system
the program is running on, so how can it be defined in a useful way?

You could say for example "Storage allocated for an object is released
when the object is no longer visible and memory usage is high".  But
how do you define how high memory usage should be?  You could say when
memory is almost exhausted, even that is difficult to define.  Then you
could have the situation where someone creates a lisp compiler than
emits FPGA netlists, how do you check something like this?

None of this would be in the spirit of the spec, which doesn't even
define memory AFAIK.  The spec deals entirely in matters of the
language and it's appearance to the programmer.  For what it's worth I
think the C spec is the same, and says nothing about actual memory
usage.




More information about the Python-list mailing list