[LMH]Re: Various questions

James A. Crippen james@unlambda.com
Wed Apr 24 15:30:01 2002


Andreas.Eder@t-online.de (Andreas Eder) writes:

> Well C would even fare better than, wouldn't it? And Ocaml should also
> be quite good. I once saw a rather rudimentary kernel booting the raw
> iron from a floppy that was written in OCaml, but I can't remember the
> name at the moment.

JM and I argued between C and C++.  The end result was that C++ sucked
slightly less than C did, so we went with it.  It's easier to abstract
with.

Someday some major rearrangement will be due.  I get the funny feeling
that it will happen soon, since I'm sure JM is going to start hitting
the wall with bare iron and Unix integration.

The rearrangement will probably clean up a lot of the cruft that's
been piling up, and will help to understand what we've got.

Maybe I should make a little diagram of how the thing works
currently.  That might help people to grok it.  And might help in
deciding what to cut out or simplify.

> But both of these seem very attractive solutions to me. I'd certainly
> like to have something like that.

Then have at it.  But it's too expensive to do for free.  I'd love to
do so, but I can't afford the hardware, or the equipment.  This is why
open-source hardware hasn't happened, because it costs too much for
the equipment needed to produce it.

I want a software solution.  I want something that can run on generic
hardware.  I *especially* don't want to have to muck with writing
Linux kernel drivers to get some funky hardware running.  Linux kernel
drivers are evil.

While the appeal of a new hardware-based LispM is interesting, I think
that hardware LispMs are a loss.  The reason that they died out was
because generic hardware was so much more powerful and cheaper to
produce and obtain.  Modern Lisps run faster on generic hardware than
LispMs ever dreamed of.  And on modern hardware you can afford to
waste a few extra cycles on software level memory management that had
to be done in hardware on the LispMs because of performance
degradation.

In short although Lisp can benefit from hardware support, in This
Modern World the hardware support isn't necessary even for excellent,
real-time performance.  So there's no need to bother with hardware
solutions.  While they have their charm, and indeed have a certain
sort of fascination when it comes to embedded systems, I see them as
unnecessary for the desktop.

'james

-- 
James A. Crippen <james@unlambda.com> ,-./-.  Anchorage, Alaska,
Lambda Unlimited: Recursion 'R' Us   |  |/  | USA, 61.20939N, -149.767W
Y = \f.(\x.f(xx)) (\x.f(xx))         |  |\  | Earth, Sol System,
Y(F) = F(Y(F))                        \_,-_/  Milky Way.