[self-interest] Re: Self for Squeak

David P Harris dpharris at telus.net
Wed Aug 31 16:50:26 UTC 2005


Hi JEcel and Pavel--

Hey, nice!  I am confused re the use of [].... as in:

( |
parent* = [( |
b = [4].
sum = (^ a+b).
ifTrue: b1 ifFalse: b2 = ( ^ b1 value ) | )].
a = [3].
| )

Are they just syntactical?
David

Jecel Assumpcao Jr wrote:

>Pavel,
>
>  
>
>>you may be interested in my experimental project named Marvin.
>>
>>http://www.comtalk.net/Squeak/95
>>    
>>
>
>Yes, I did find it very interesting indeed. I hope you don't mind me
>sending a copy of this to the Self list so that other people who might
>be interested can learn about your project. Perhaps it would be a good
>idea to announce it in the Squeak list too.
> 
>  
>
>>It's an attempt to create a Self dialect in Squeak which is compiled 
>>directly to the native bytecodes of Squeak and uses some little 
>>extensions of virtual machine like delegation support etc.
>>    
>>
>
>There were other projects that added a bytecode or two to support this
>kind of thing. It would be nice if this could be done in a fully
>compatible way so that all future VMs could support it even for people
>not interested in using it. The original "blue book" instruction set had
>a few spare opcodes but I would have to check to see if Squeak didn't
>use them all.
> 
>  
>
>>You are experienced Self programmer (unlike me) and you may see some 
>>problematic aspects of my concept of Squeak and Self integration which I 
>>haven't perceived. Your comments are welcome.
>>    
>>
>
>It looks great. I only didn't understand why you had to use a non local
>return in the ifTrue:ifFalse: definition in your examples.
>
>The use of [...] to explicitly control compile-time evaluation is a very
>good idea and something I had borrowed from Forth for a language I
>desiged a while ago. Agora has something similar.
>
>Earlier versions of Self were more similar to Marvin in some aspects.
>They had characters as different objects from strings, for example. And
>the slot lookup was closer to your depth first strategy. There were no
>annotations either.
>
>I am not sure why you feel you need to add primitives in future versions
>since you seem to have full access to Squeak. While I find the Self
>syntax for primitives much nicer than the old Smalltalk one it seems a
>little odd that while they look exactly like message sends they are
>really subroutine calls since they ignore the receiver type. Something a
>little less global would be nicer.
>
>-- Jecel
>
>
> 
>Yahoo! Groups Links
>
>
>
> 
>
>
>
>
>  
>





More information about the Self-interest mailing list