Information Environments for the 21st Century
Sam Adams
ssadams at us.ibm.com
Thu Oct 2 14:51:23 UTC 2003
Welcome to the Squeak list Trygve!!
Its been a very long time since I crashed your demo machine at OOPSLA'86!
Great to have the father of MVC with us again.
Best Regards,
Sam
Sam S. Adams, IBM Distinguished Engineer, IBM Research
tie line 444-0736, outside 919-254-0736, email: ssadams at us.ibm.com
<<Hebrews 11:6, Proverbs 3:5-6, Romans 1:16-17, I Corinthians 1:10>>
Trygve Reenskaug
<trygver at ifi.uio.no> To: squeak-dev at lists.squeakfoundation.org
Sent by: cc:
squeak-dev-bounces at lists.squeakfou Subject: Information Environments for the 21st Century
ndation.org
10/02/2003 09:52 AM
Please respond to The
general-purpose Squeak developers
list
Hi all,
I'm new to Squeak but old to Smalltalk (since 1978). My retirement project
is definitely "blue plane", and its scope is expanding at a frightening
rate. The short form: "What should the information systems of the 21st
century look like?"
The watchword should be that it should support the users' mental models,
including programming: "Put the user in the driver's seat"
Who is the user and what does his/her environment look like?
1) A person in the role of a private citizen.
Top level model: an object model holding his information
as tangible objects
(not a class model, which is a different kind of animal all together)
2) A person in the role of a professional team member in an enterprise.
Top level model: an object model holding his information as
tangible objects and supporting his/her cooperation with others.
(not a class model, which is a different kind of animal all together)
3) A person in the role of an applications programmer
Top level model: an object model holding his programs as
tangible objects
The "programming language" is basically a modelling language
Rephrasing Alan:
"A modelling language is what the programming language designers
forgot to put into the language."
4) A person in the role of a methodologist
Top level model: an object model holding metaclass objects defining
the above modelling/programming language
5) A person in the role of visionary....
Defining the meta-meta objects that form the methodologist's
environment
These objects are created by magic and have to be very stable.
The ideas are mainly from
- Smalltalk "everything is represented as an object"
- UML, with its meta-levels. An application model is an instance of UML,
and UML is an instance of MOF.
- The UML specification defines a complex class hierarchy. This hierarchy
is simply a comment to the real substance; which is the objects that
are instances of the defined classes.
- Richard Pawson's Naked Objects project where information is presented
to
the user as tangible objects.
and much more. Why should our meta-meta language restrict us to punched
card input and line printer output, i.e., BNF.
But the main point is that we have to leave the old life cycle:
"Code-Compile-Load-Run-Stop". The Smalltalk idea of a continuously
executing world of objects is clearly superior. (I belive the execution
thread of my current Squeak image started some time back in 1972).
I have done some experiments with an executing UML where I modified the
Smalltalk classes, meta-classes and meta-meta-classes to conform to the UML
architecture. Confusing, but informative.
See http://heim.ifi.uio.no/~trygver/UML2.0-U2P/UML_VirtualMachine-131.pdf
The morphic architecture looks like an important step forward towards
tangible objects. It breaks with the ST-80 MVC, but does not seem to
greatly invalidate my original MVC from 1978. See the original proposal
here: http://heim.ifi.uio.no/~trygver/mvc/index.html
Enjoy
--Trygve
--
Trygve Reenskaug mailto: trygver at ifi.uio.no
Morgedalsvn. 5A http://heim.ifi.uio.no/~trygver
N-0378 Oslo Tel: (+47) 22 49 57 27
Norway
More information about the Squeak-dev
mailing list
|