Eliminating assignments and variable syntax (accessors)
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
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)?
More information about the Squeak-dev