Subject: Re: Lisp without GC?
From: Erik Naggum <>
Date: Tue, 25 Jun 2002 18:57:48 GMT
Newsgroups: comp.lang.lisp
Message-ID: <>

* Hannah Schroeter
| Not a Lisp, but might be interesting to consider in a "oh, such a thing
| exists, perhaps we could get ideas from it" way (or to use it albeit it isn't
| Lisp, of course), is the ML Kit (
| It nowadays has a GC again, but version 3 IIRC relied only on compile time
| region inference.

  I think I may want some form of defaulting to dynamic-extent so that it does
  exactly this, but the compiler will need to compute and propagate information
  about the usage of incoming arguments in a function so that a caller can know
  that no component of an argument was stored away elswhere.  This is fairly
  easy to prove for the whole function, but the meta-information required about
  a function can easily lead to networks of information that lead to massive
  recompilation upon simple changes, something we generally do not want, even
  in fully incrementally compiled systems.  Perhaps with lazy compilation like
  you can do with some virtual-machine based systems, this would not be so bad,
  but it is an "interesting" problem.  Still, it would be very cool to use the
  stack and its cheap de/allocation rather than the garbage collector for the
  temporary data that only trigges garbage collection too often.
  Guide to non-spammers: If you want to send me a business proposal, please be
  specific and do not put "business proposal" in the Subject header.  If it is
  urgent, do not use the word "urgent".  If you need an immediate answer, give
  me a reason, do not shout "for your immediate attention".  Thank you.