On Mon, 29 Aug 2005 18:11:48 +0200
Juan Jose Garcia Ripoll <lisp@...> wrote:
> More or less you will need to
> 1) Get ECL's own garbage collector up and running again
> 2) Ensure that C streams are there and usable
> 3) Check unixfsys.d for filesystem features
> 4) Check unixint.d for signals/interrupts
> 5) Optionally port other parts, such as tcp, threads, etc.
> Given that the L4 environment provides a decent C library (ANSI, not
> POSIX), step 2 will be extremely easy. Just look for some stray uses
> of fdopen, open, close and report them.
I'll have to take a look at dietlibc to decide how "decent" it actually
> Finally 1 is the most important. ECL's former conservative garbage
> collector is broken. I did it and I cannot trace back when this
> happened :-/ It should be fixable, and one should do it with a working
> port (BSD, Linux, etc), before moving to the L4. Porting this garbage
> collector to L4 will be trivial, given that the operating system
> provides either sbrk() or the equivalent of mmap().
Virtual memory magic is quite difficult in plain L4, as you have to
implement your pager yourself. I'll take a course on microkernel
construction coming semester, so I hope to get some idea on how to
actually do this.
Ok, I guess I take a look into the old garbage collector and report
(Of course SML does have its weaknesses, but by comparison, a
discussion of C++'s strengths and flaws always sounds like an
argument about whether one should face north or east when one
is sacrificing one's goat to the rain god.) -- Thant Tessman