<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<br>
<div class="moz-cite-prefix">On 20.05.2014 23:16, tim Rowledge
wrote:<br>
</div>
<blockquote
cite="mid:4AA7E149-A0C7-4BF4-AA4F-71E1407132D3@rowledge.org"
type="cite">
<pre wrap="">
On 20-05-2014, at 12:30 PM, Chris Cunnington <a class="moz-txt-link-rfc2396E" href="mailto:brasspen@gmail.com"><brasspen@gmail.com></a> wrote:
</pre>
<blockquote type="cite">
<pre wrap="">
On May 20, 2014, at 3:24 PM, karl ramberg <a class="moz-txt-link-rfc2396E" href="mailto:karlramberg@gmail.com"><karlramberg@gmail.com></a> wrote:
</pre>
<blockquote type="cite">
<pre wrap="">And the author seems to agree and finishes his to do list with:
"The key parts of our plan for Aurora are:
...
        • a smooth interface to the old world so we don't end up sharing a grave with smalltalk
</pre>
</blockquote>
<pre wrap="">I love statements like this one.
</pre>
</blockquote>
<pre wrap="">
Me too; the only thing that a 'smooth interface to the old world’ will do is make sure people use your new stuff as if it is the old stuff. That’s what happened with all those stupid languages that use C syntax ‘to help people get used to’ OOP (or functional, or whatever) and end up being JADCC in practice.
tim
--
tim Rowledge; <a class="moz-txt-link-abbreviated" href="mailto:tim@rowledge.org">tim@rowledge.org</a>; <a class="moz-txt-link-freetext" href="http://www.rowledge.org/tim">http://www.rowledge.org/tim</a>
Strange OpCodes: XER: Exclusive ERror</pre>
</blockquote>
<br>
I agree that we need to open new opportunities while we retain what
we have learned to like and appreciate with Smalltalk over the past
30 years. Object orientation as it is realized in the Squeak/Pharo
runtimes have a lot more to offer than we currently utilize. The
Squeak/Pharo runtimes support objects and <i>object interaction</i>.
Objects are specified by classes, object interaction is often
specified by an ensamble of methods that are distributed among
several classes. <br>
<br>
The essence of object orientation is that objects interact to
achieve a goal. This interaction can be observed by making a trace
of the runtime flow of messages through the system. It is sometimes
hard to get a picture of this interaction by reading the class
codes. Jim Coplien (Cope) and I are working on a new,
two-dimensional programming paradigm where the interaction is
explicitly specified in a new dimension. The paradigm is called DCI
- Data, Context, and Interaction.
In the Data projection, <i>what-the-system-is</i>, objects are
observed from their insides and system state is specified by
classes. In the new Context projection, <i>what-the-system-does</i>,
objects are observed from their outsides. System behavior in the
form of object interaction is here visible and tangible.
Participating objects are named according to the <i>role </i>they
play in the interaction. The behavior that an object needs to
sustain its role is added to the object while it is needed. <br>
<br>
DCI is non-intrusive in that it does not put any constraints on
regular Squeak programming. We expect, however, that DCI will be
found useful and that new projects will have simpler classes and
explicit code for system behavior. I hope to get an opportunity to
present DCI at ESUG in August.<br>
--Trygve<br>
<br>
<br>
<br>
-- <br>
<div class="moz-signature">Trygve Reenskaug mailto:
<a class="moz-txt-link-abbreviated" href="mailto:trygver@ifi.uio.no">trygver@ifi.uio.no</a>
<br>
Morgedalsvn. 5A <a class="moz-txt-link-freetext" href="http://folk.uio.no/trygver/">http://folk.uio.no/trygver/</a>
<br>
N-0378 Oslo <a class="moz-txt-link-freetext" href="http://fullOO.info">http://fullOO.info</a>
<br>
Norway Tel: (+47) 22 49 57 27
</div>
</body>
</html>