Eliminating assignments and variable syntax (accessors)

Marcel Weiher marcel at system.de
Thu Aug 5 21:05:28 UTC 1999


> From: Hans-Martin Mosner <hm.mosner at cityweb.de>
>
> Have you ever noticed how methods and their activations correspond to 
> classes and their instances? If you take this a little further,
> temporaries could be just the instance variables of these
> 'method-classes'.

Yes, I've been thinking on and off about this subject for at least  
the last year, and one of my goals is introducing something just like  
this.  One problem is that these 'method-classes', which I would  
call first class operations, are really instances of the class  
operation, which is a (fairly concrete) subclass of the abstract  
superclass 'computational component' (a term from software  
architecture).  So you have two levels of instantiation.  Hmmm.

Once you have these specific kind of operations, you can think of a  
other components, for example data-flow processing elements.  My work  
on stream-based iteration and EncodingFilters are squarely aimed in  
this direction, with the goal of integrating these different concepts  
as seamlessly as possible.

My most recent insight was that the relationship between normal  
pipe/filter processing (each filter is an autonomous processing  
element, reading from its source and writing to it destination, and  
with complete control over how to deal with each incoming object) and  
EncodingFilters (each filter is passive, receiving objects and  
auto-dispatching a fixed processing message to them) is very similar  
to the relationship between Smalltalk-72 ( each object is an  
autonomous element, reading from the message/token stream and  
interpreting each token as it sees fit) to Smalltalk-76 (each object  
waits passively for messages which are dispatched automatically using  
a fixed lookup algorithm).

Anyway, my overall idea (and project) is to create an abstract  
meta-level based on software-architectural concepts and constructs,  
with the Smalltalk meta-objects ( Message, Object, Class, ... ) being  
particular concrete subclasses embedded in that overall hierarchy.

The Fischer paper was very helpful, btw. in its characterization of  
control structures as relations over processes, which makes them fit  
nicely within the software architectural concept of a connector.

....

Any profs on this list looking for a part-time, crazy PhD student  
(got my business to run as well)?

Marcel





More information about the Squeak-dev mailing list