[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

improvements



I hereby release the GC, and challenge people to find bugs in it.

My previous apologies still apply.  It's dreadfully slow, and its output
is overly verbose.  But it does seem to work, and apparently you can now
call it more than once.  (Thanks to Dave Miller for bringing this to my
attention.)

At some point I'll make it invoke itself automagically.  For now you
need to invoke it explicitly, by saying (GC).  Don't do it inside an
error break loop (or a ^C breakpoint); it will deride you for doing so,
and may not complete successfully.  More info later on how to find out
how big the heap is, and other information to help you decide when it's
a good time to GC.

Another new feature, installed by popular demand, is PP - a
pretty-printer, of sorts.  Say (PP FOO), where FOO is (an expression
evaluating to) an interpreted procedure or an s-expression.  PP suffers\n from the following defects, which will be fixed within the next few
days:

  - It doesn't indent.  Lines come out properly broken, but left-justified.
  - It won't work on macros.  Eventually one will be able to say (PP FOO)
    even if (DEFINE-MACRO (FOO ...) ...).
  - It uses the stupidest possible n^2 algorithm, so it's slow.

I encourage people to use the system.  I'm a little disappointed in the
level of interest.  I bet no one has even tried running the compiler.
The system runs on the Apollo (including FASLOAD), and will soon be
available as a normal "tools" program.  I don't know what you're waiting
for.  (Manual?  Structures?  Non-cross-compiler?  Why wait - you got two
helpful consultants; entities (and vectors); and a cross-compiler.)