Squeak size history
goran.hultgren at bluefish.se
goran.hultgren at bluefish.se
Mon Dec 16 09:04:24 UTC 2002
Tim Rowledge <tim at sumeru.stanford.edu> wrote:
[SNIP]
> To make a kernel we really need very little. You need stuff to _be_
> methods, stuff to _hold_ methods and stuff to _run_ methods. Of course,
> we need some way to add more stuff but that doesn't need to be much; a
> prim that can retrieve something suitable from somewhere (embedded in
> the flash memory, in a file, off a net connection) or whatever. One
> could load a bytearray that is used as an ImageSegment (in which case
> some support code must be in the kernel) or a String to compile (in
> which case the Compiler - or most of it - must be there). Once you have
> that and VM plugins you can put together anything.
My proposal for the smallest kernel would be to have file support
(needed in order to maintain a changes-file etc I suppose - an
kernelimage without filesupport sounds tricky to deal with) OR Socket
support. Sockets are simpler I guess. And then also keep Compiler in
there AS LONG as it can be easily discarded.
This would let us:
- Fire it up with some command line argument telling it to open a Socket
on port x.
- Telnet into the kernel and feed it simple "do its" like a primitive
shell, since it has the Compiler.
- Feed it source packages.
- Tell it to dump the compiler, close the Socket and do a snapshot.
So in short - either file or Socket support (or some other darn I/O) is
needed. And of course - if it can be discarded like the Compiler - sure,
why not? :-)
My point is - if stuff can be discarded we don't necessarily need to
throw it out into a loadable package. The Compiler sounds like such a
thing - because its a "catch 22" if we stick to source code packages
then we can never break out the Compiler into such a package, right? :-)
regards, Göran
More information about the Squeak-dev
mailing list
|