CPU running smalltalk bytecode

Scott A Crosby crosby at qwes.math.cmu.edu
Sun Feb 10 17:06:01 UTC 2002


On Fri, 8 Feb 2002, Bergel Alexandre wrote:

> I have not work at a such low level, but I have some questions. VMs for Java, Smalltalk, OCaml seems to be almost the same. Each one contain features for :
> 	-stack based
> 	-Garbage Collector
> 	-lookup method
>
> Also, I have heard Lex talking about a CPU able to run Smalltalk platform.
> Is it possible to have more information about it ? Perhaps next generation of CPU (Motorola, Intel, AMD, ...) could include such features...

Unlikely. Smalltalk, and the others, are based around a stack machine.
This is fundamentally different from being based around a
register-register machine like conventional CPU's. Register-register CPU's
are simpler to optimize and support superscalar operations and multiple
dispatch, instruction reorder, and pipelining. (I've also seen some
research claiming that many of these same optimizations are possible on
a stack machine hardware.)

Custom CPU's are sorta not in vogue anymore; usually by the time a
year/two go by during the design, the advantages of custom hardware are
more than overcome by Moore's law doubling what conventional CPU's can do.

But, it may be possible to make a much faster (C/slang-based)
stack-machine interpreter for squeak. I'm researching this.

Scott







More information about the Squeak-dev mailing list