Fwd: Re: [self-interest] Self versus classes
lourenci at lsi.usp.br
Sat Mar 17 15:41:36 UTC 2001
Jecel Assumpcao Jr wrote:
> Eis o email que você não recebeu -
> ---------- Forwarded Message ----------
> Subject: Re: [self-interest] Self versus classes
> Date: Wed, 14 Mar 2001 20:37:39 -0500
> From: Jecel Assumpcao Jr <jecel at merlintec.com>
> To: self-interest at yahoogroups.com
> On Tuesday 13 March 2001 13:23, Albertina Lourenci wrote:
> > I am preparing to submit a paper to OOPSLA'01 about an
> > hermeneutic understanding of Object oriented programming.
> > Last OOPLA, Rayside and Campbell proposed An Aristotelian
> > understanding of object-oriented programming.
> > It is based on Aristotelian logic.
> I think that the Plato versus Aristoteles debate in programming dates
> at least from the mid 1980s.
Thanks for this nice site. However you are mistaken. Hermeneutics
has nothing to see with Platonic thinking. To the contrary, hermeneutics
is the way of being of art. Platonic thinking would rather be being
taught by the Hand of God how to paint a picture or it is rather
connected to religious thinking. The eternal revelations that
God reveals to men. And indeed to pursue my last postdoctorate
scientific report I had simply to show that Platonic reasoning
does not fit human reality anymore. The new modern God
manifestant Baha'u'llah has the truth for the modern times.
Among them the truth that the woman is equal to the man.
This was stated in 1853 in Persia and give rise to the new modern
religion baha'í faith !!!! There were twenty thousand martyrs! Moslem
martyrs stating that the woman is equal to the man!!! Among
other truths! The overwhelming majority of Western men
around me are not more than blatant chauvinist pigs!!!
This challenges human comprehension!!! And of course
women are evolving however they do not care very much
if they are still rather dependent on men for everything.
To dismantle the Platonic thinking followed by philosophers
such as Heidegger, and poets
such as Rilke and abstract artists such as Mondrian and Kandinsky
was not that easy. They all wanted to create a new scale of value
for the new world at the beginning of the twentieth century. And
of course their "new scale of values" based on Platonic thinking
necessarily implied the inferiority of women!!!!!!!!!!!
Hence hermeneutics is thoroughly worried in revealing the
thingness of things and hence opening the gate to a new way
of thinking based on qualities associated with opening, ability
of new discoveries, courage to jump into the unknown and
becoming trailblazers necessarily leading to a creative life.
And the hermeneutic creative implies above all to mimic
the autopoietic nature of life. It essentialy has the nature
of the dialogue, the play, the form of the question and so on.
> > It seems to me that the computer scientists have difficulty
> > in truly grasping the thingness of the things that can be
> > very well expressed in OO paradigm.
> Most computer scientists have a pure mathematical background or
> inclination. Alan Kay divided his time between mathematics and
> molecular biology. That problably helped..
Sure. Being concerned with Biology since I was twelve years old
especially molecular biology and genetics made it easy for me
to develop my ecodesign model and identify the OO paradigm
is fundamental to implement it.
> > Hence they insist on focussing the class concept as central in
> > OO programming.
> It was a key concept in Simula and Smalltalk. Most languages that
> followed them just took classes for granted, specially since they fit
> in so well with abstract data types (ADT) that everyone was worried
> about in the late 1970s.
> > I will take for granted this to ease the discussion. Of course
> > my opinion is that the object is the central concept.
> It is called "object oriented programming", after all, and not class
> oriented programming. Classic programming, perhaps?
Yes because computer scientists are rather interested in implementing
scientific projects hence demanding an Aristotelian understanding of the
phenomena around us. Mostly top-down approach. However OO
programming eases bottom-up approach.
Especially prototype based languages.What I think is terrific here
and confirms the truth of my search towards hermeneutics is the
redirection of Alexander's trends of research tuning with the
hermeneutic thinking. In his lecture delivered at OOPSLA'96, invited
by Jim Coplien since he was the inspirer of the Design Patterns
of the GOF and published at IEEE Software September/October 1999
he emphasizes the need to identify living structure with a reasonable
level of objectivity, and once having identified the primitive elements
of all wholeness, namely a recursive structure based on repeated
appearances of a single type of entity. He calls these entities centers.
He pursues all wholeness is built from centers, and centers are
recursively defined in terms of other centers. Centers have life
or not in different degree, according to the degree that the centers
are built from other centers.
He pursues stretching a bit, he thinks there may even be a little
bit of a connection between the geometric centers which appear
as the building blocks of all life in buildings, and the software
entiities that you call objects. Centers are field-like structures
that appear in some region of space. They don't have sharp
boundaries, buth they are the focal organizing entities that one
perceives at the core of all pattern, all structure and all wholeness.
Everything is made of these kinds of centers.
For me it is evidently a nice description of how is programming in
Self (I would like to hear here the opinion from Randy and Dave
of course!!!).(page 77-78)
He insists this insight goes far beyond the power of the pattern
language. Although the patterns define relations which might
be regarded as specific instances of the recursive interaction of
centers, the overall view of centers gives a more comprehensive
and more powerful results. Hence for me it is the same as
telling that the design patterns are better implemented through
delegation that class inheritance as the prototype based
> > So I would like Mario to join the discussion. I have reread his
> > nice paper about self includes:Smalltalk.
> > He implemented in a direct and straightforward way Smalltalk
> > in Self in three weeks.
> > The point here is that to exploit Self's possibility of let's
> > say translating a language into it, in my opinion is not the
> > same as stating that we can simulate in Self efficiently and
> > safely like in C++, Simula or Eiffel the class concept.
> Please note the paper's title: "Self includes: Smalltalk". The whole
> point was to prove that Self is a valid dialect of Smalltalk. Self was
> designed by starting out with Smalltalk and eliminating many
> distinctions (inheritance versus instanciation, instance variables
> versus global variables, object cloning versus method activations and
> so on). Some people thought that with all these simplifications Self
> might have become less than Smalltalk. Mario showed that just adding a
> few support objects and a parser (since there are slight syntax
> differences) full compatibility with Smalltalk-80 was obtained.
> A very different effort was Pep, which translated Java bytecodes into
> Self bytecodes. This just made use of the virtual machine (much as
> several languages have made use of Java's virtual machine) and not
> really the Self language itself. Nobody would argue that Self is a kind
> of Java :-)
> Of course, you can implement nearly any language in nearly any other
> language. That just proves that computers, and languages, are universal
> machines. But writing a Lisp interpreter or compiler in C says very
> little about the relationships between those two languages.
> But Mario didn't implement a Smalltalk interpreter or compiler in Self.
> He didn't even just use the Self virtual machine to run translated
> Smalltalk code (though it did that). He made use of Self's boolean and
> integer objects among others. The new Smalltalk objects *looked* like
> Self objects and could be used as such.
> This effort did prove that the full semantics of classes, as
> implemented in Smalltalk, are available in Self. C++ or Eiffel classes
> are another story.
After citing Alexander as above, I believe the doubt in understanding
the gist of Self is over. And if Mario grasps the power of Alexander's
saying he would not be concerned anymore with this kind of concern.
What matters, SELF IS HERMENEUTIC AND Smalltalk is not.
A dialect that has a different nature from Smalltalk!!! This is divine!
> > Suppose the user wants to implement in Self the classification
> > of the families, genera and species. Is Self fit to do this?
> Sure: make genera objects the parents of species objects, and the
> family objects the parents of genera objects.
> flipper = ( | species* = tursiops.
> age <- 3.
> | )
> tursiops = ( | genera* = truncatus.
> popularName = 'bottle-nosed dolphin'.
> color = paint named: 'gray'.
> | )
> truncatus = ( | family* = delphinidae.
> | )
> delphinidea = ( | suborder* = odontoceti.
> | )
> odontoceti = ( | order* = cetacea.
> spiracles = 1.
> hasTeeth = true.
> | )
> cetacea = ( | infraclass* = euthenia.
> forwardLimbs = paddles.
> rearLimbs = false.
> | )
> euthenia = ( | subclass* = thenia.
> placental = true.
> | )
> thenia = ( | class* = mammalia.
> eggLaying = false.
> | )
> I don't think this could be done any better in another language, and
> would actually be worse in many of them.
I do thank you for the sweet example with the dolphin. But by now
it is clear to me that Self has more strongly the same nature of
my ecodesign model I mean the classes construction in Self has
the flavour of reasoning as an autopoietic entity. I mean it is
very easy to handle though different, arbitrary objects united
in a class concept. For example a neighborhood consists of
many different buildings. LIkewise due to the prototyping
allowing differential programming, this magic effect can
result in Self. Hope you grasp what I mean. Class programming
only allows for similar objects hence calling the urgent need
for design patterns to reach more expressiveness.
> > If so why then computer scientists even enjoying and loving Self
> > have difficulties to understand it and program in it?
> Not many people have ever seen a running Self system. I don't think
> that those who have had problems understanding it or tried to program
> in Self and failed. If that is the case for anyone on this list, please
> speak up so we can find out what is wrong.
Well, here at the LSI where I work, there are people interested in
Self and build nice things for electrical engineering purposes. When
I asked them simply about how to use the collections, they simply
stated I do not need this!!!!! However as you know collection are
fundamental to implement my ecodesign model. Moreover all
the graphical reasoning implied. Indeed I enjoy programming in Self
however it sounds to me like biochemistry. And I hated this very much.
I almost gave up scientific high school to classic high school because
I could not stand this fragmentary viewpoint in chemistry and organic
> I have seen many people who have read a few of the papers and didn't
> get what it is all about, but that is an entirely different matter.
The papers are gorgeous, however the view conveyed is always
fragmentary. So I do not really understand how Self programming
environment really is. I do not have a whole view of it.
Please Jecel I am not receiving my own messages through
Self list. How can we mend this?
Thanks for your kind attention once more.
Have a fun-filled weekend,
> -- Jecel
> Your use of Yahoo! Groups is subject to
| Albertina Lourenci |
| PhD in Architecture and Urbanism |
| post-doctorate researcher |
| Laboratory of Integrated Systems University of Sao Paulo |
| Avenida Professor Luciano Gualberto, 158 Travessa 3 |
| CEP: 05508-900 |
| Sao Paulo Sao Paulo State Brazil |
| Voice: +55 011 818 5254 |
| Fax: +55 11 211 4574 |
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Self-interest