PIE please! ( Was: Re: Classes as Packages (was: Harvesting infrastructure) )

Brent Vukmer bvukmer at blackboard.com
Mon Nov 18 17:25:56 UTC 2002


Daniel --

Weren't you working on a PIE implementation in Squeak?

Daniel Joyce wrote:

>
>	Take a look at Traits before reinventing the wheel. I think Traits are 
>the best tradeoff between MI and SI w/o all the ugliness. Stepha 
>Ducasse is working on it, IIRC. Very Very Cool Stuff!
>
>  
>
>>- Every selector bound to the abstract behavior which introduced it. 
>>A behavior can only implement methods for selectors bound to it or
>>its super behaviors (same as described before).
>>- Environments representing versions/projects of Squeak containing
>>new classes/versions and inheriting classes from zero or more other
>>environments (same as described before).  But now an environment is
>>also a namespace.  All local and inherited classes/vars of an
>>environment, as well as their selectors, are visible to methods of
>>classes in that environment.
>>
>>Environments form layers of Squeak.  Processes can run with respect
>>to different environments on the same image.  Classes of an
>>environment can be downloaded together or individually.  Class
>>prerequisites can be downloaded with the class automatically, or on
>>demand during runtime.
>>    
>>
>	
>	Sounds like PIE, I posted a message with exactly these ideas a few 
>weeks ago. Also, it gives us other goodies too, like easy 
>type-inferencing. 
>
>  
>
>>The key to this design, and any package design, I think, is that
>>class extensions are first class objects (I make them new super
>>behaviors). When they are not first class objects they act like
>>changes to a class. Changes is a lot harder to manage and mix than
>>separate objects, so you want to keep them to a minimum.  In this
>>design, only true behavior changes need to be managed as changes. 
>>They are managed as versions in environments that override versions
>>in inherited environments.
>>
>>    
>>
>	Bingo! 
>
>	Look for messages on Traits and PIE, and that old message from me...
>
>  
>
>>    
>>
>  
>




More information about the Squeak-dev mailing list