[ANN] LambdaMessageSend explained

Damien Cassou damien.cassou at gmail.com
Sun Feb 25 13:12:46 UTC 2007


Thank you very much for your explanation. Why not writing it into the website ?

2007/2/25, Stéphane Rollandin <lecteur at zogotounga.net>:
> Damien Cassou wrote:
> > What you did looks really cool. I will prepare it for next squeak-dev
> > image. Did you already use it in one of your projects ? Can you give
> > us a little background please ?
>
> yes, I use it a lot in µO.
>
> it first started from ideous hacks I did on MenuMorph and MenuItemMorph
> so that I could have highly dynamic behavior from menus. I would set the
> morphs target as a MessageSend with another MessageSend as receiver and
> a custom made evaluation trigger as selector, etc. very ugly ! basically
> what I describe in the first part of the notes: how trying to nest
> MessageSends naturally leads to LambdaMessageSend.
>
> now about all menus in µO rely on it.
>
> and again in µO, I also use subclasses of LambdaMessageSend for
> representing plain mathematical functions. see the NFunctionEditor for
> example: if you do 'µO objects'->'+ µO tools'->FunctionEditor then click
> 'help' in the appearing bookmorph, you will see how functions can be
> defined directly by their equation: this is all based on LambdaMessageSend.
>
>
> the lambda calculus stuff just came along as I tried to figure out the
> conceptual framework for evaluation, which is a tricky matter.
>
>
> curiously enough I also first started to hack a Lisp interpreter
> thinking that would be a good way to test the LambdaMessageSend idea,
> but I eventually came up with Lispkit which does not make use of it at
> all ! ... still I am now trying to implement a compiler and it seems it
> could be quite useful at last.
>
>
> so everything came from very practical problems I had with µO (I'm no
> theorist). trouble is, I could not stop digging and eventually went very
> astray, since my primary goal is to compose music. I would have been
> better off learning guitar :)
>
>
> regards,
>
> Stef
>
>
>
>


-- 
Damien Cassou


More information about the Squeak-dev mailing list