[LMH]Re: Various questions

Tim Moore moore@bricoworks.com
Wed Apr 24 08:18:01 2002


On Tue, 23 Apr 2002, John Morrison wrote:

> Hi;
> 
> Emmanuel Rialland wrote:
> > I know that those questions could sound provocative and but here we
> > are:
> > 
> > 1) why C++?
> > why not lisp / scheme / OCaml or anything else (I remember
> > that simh was mentionned).
> 
> Easier to put on raw hardware.  If we were doing this in Lisp, and
> didn't care so much about a Lisp OS, putting more work into CMUCL/SBCL
> and gutting a Linux distro might be the way to go.

In defense of C and C++, a CPU emulator is mostly an exercise in moving
bits and bytes around, and C is very good at that, especially when the
bytes are in 32 bit chunks.  That said, we could probably generate a bunch
of C/C++ from Lisp, especially as we have interesting TI Lisp source code.
> 
> > 2) most of the game consoles emulators developers like to put some sort of
> > "dynarec engine" (dynamic recompilation)?
> > I read some pages of this link
> > http://acorn.cybervillage.co.uk/emulation/dynrcomp.htm
> 
> "Dynamo" was one that I remember reading about.  It would be nice to
> try.

Once something's working :)  Squeak is a very similar environment to what
we're trying to achieve and gets reasonable performance.  It's coded in C.
> 
> > Looks good, fancy and complicated.
> > Has anybody wondered about that too? Pushing the enveloppe I could imagine
> > Open Genera for Alpha running on a reverse fx32 (alpha library to run i386
> > code) running on a Transmeta.

Complexity is a means to an end, not an end in itself :)

Tim