[self-interest] Re: Transmeta
Jecel Assumpcao Jr.
jecel at merlintec.com
Thu Jan 20 19:52:04 UTC 2000
Dobes Vandermeer wrote:
> I guess I'm pretty new to the Self scene, but doesn't Self compile to
> machine code before execution, rather than interpret bytecodes?
Exactly. Though some people (including me) have implemented Self interpreters
so that is a valid, but slooooow, alternative.
> documentation (what little of it there is) isn't completely clear on
> this point..
If you count two PhD thesis, then the documentation on this is actually very
good. In fact, the same information is also available in a bunch of papers that
were presented mainly at OOPSLA and ECOOP.
> Of course, this has very little to do with your
> question... although bytecodes often contain operations that are
> "difficult" for hardware to emulate, like a dispatch.
Self is famous for "message passing at the bottom" in contrast to Smalltalk
which includes things as variable access and assignment. So a bytecode can only:
- push a literal or "self"
- send to top of stack, send to self, resend to self
- modify the following bytecode's argument or its resend parent
The second group (which you have correctly identified as difficult) is by far
the most common in Self methods.
More information about the Self-interest