Hi Alex!

Yes, indeed! Code typically gets quite large quickly when compiling the
miniPicoLisp into "SISC Code". But luckily your miniPicoLisp was tiny
enough.

But adding a few more Lisp - Instructions to SISC will significantly reduce
the code length. Y-combinator, the "pure Lisper's while loop" and Beta
reduction(s) just to mention here.

Probably adding parts of the "Forth Instruction Set" - seen from the lambda
point of view - might be the optimum, keeping a good balance between number
of necessary instructions and execution code length of a pure MOV "SISC"
machine to keep number of transistors as low as possible.

I will find out ... ;-)

Am Freitag, 10. April 2020 schrieb Alexander Burger <a...@software-lab.de>:
> Hi Guido,
>
>> I've succeeded now to design my own CPU. I was curious, how many
>> instructions - e.g. from Intel Instruction Set Architecture- i could
>> ...
>> Only 1 - in words "ONE" - single instruction left: MOV.
>
> Yeah, this single instruction set fascinated me too, since the early 90s
when we
> talked about it in the Munich Forth group meetings.
>
> It has ZERO opcodes - because it would be always the same :)
>
> But there *is* a cheat. All real work is done by hardware at given
addresses
> where values are moved to and fetched from.
>
> Also, code gets very large, because each instruction takes up 128 bits
> (two addresses, thus two words on a 64-bit machine).
>
>
>> Happy Easter and keep away from Windows and other viruses!
>
> Same to you, and everybody else!
>
> ☺/ A!ex
>
> --
> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
>

Reply via email to