Hi Tomas,

> When you work on the 64 bit version, you obviously implemented
> miniPicoLisp "prototype" and now building it in assembler.  How and

The two implementations have almost nothing in common. Just that 'mini'
compiles also on 64 bits, because its model is independent of the
machine's word size.

picoLisp-3 is closer to picoLisp-2, and I often look at the existing C
code while implementing the assembly version. Some things are different
or more complicated (notably the bignum arithmetics, as they now involve
also short numbers), while other things are easier (e.g. the design of
some internal interpreter mechanisms).

> when do you decide what should be implemented in C (or asm) and what
> in picoLisp?  Do you first implement a minimal neccessary core in
> C/asm and a few things in picoLisp and then later reimplement some
> picolisp code in C/asm for efficiency reasons?

If everything works out as I plan, there will be zero lines of C code.
It will, however, link to the C runtime libraries (for standard I/O,
networking etc.).

I'll implement everything directly in assembler if possible. In the past
I often wrote some function in Lisp first, and later decided to rewrite
it in C. Perhaps it will be easier to do some things in Lisp, especially
if they are not time critical. Let's see. At the moment I'm still
fighting with the bignums ;-)

- Alex

Reply via email to