"layered" language approach (was: Re: Constructors (was: RE: About KCP and automatic initialize))

Brian T Rice water at tunes.org
Thu Sep 18 06:39:44 UTC 2003


On Wed, 17 Sep 2003, ducasse wrote:

> > Other systems have found pretty reasonable ways of dealing with it (or
> > at least so I think). For example, using a "layered" language approach
> > could be helpful. On a low level, there is a "kernel language" and on
> > top of it sit all of the added elements (syntactic or semantic sugar).
> > Pretty much the only thing one needs to make sure is that every
> > program in the kernel language is also a valid program (with the same
> > semantics!) on the level above.
>
> Yes the scheme macro for example. I would really like to know what is a
> good macro system for a Smalltalk.

For reference, Slate has been managing to simplify some language aspects
such as is the case for its macro system:

http://slate.tunes.org/progman/node8.html#SECTION00033600000000000000

Where preceding a selector with ` will result in applying it to its'
arguments parse objects (which may be evaluated early or template-
transformed or directly-manipulated or left alone). Slate has other
mechanisms as well for syntax extension, but they are all of this flavor:
no special angle-bracket syntax for type declarations or primitive calls
are needed.

-- 
Brian T. Rice
LOGOS Research and Development
http://tunes.org/~water/



More information about the Squeak-dev mailing list