<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
 
<p>Stefan Urbanek wrote:
<br><font color="#CC33CC"><font size=+1>Dear Stefan!</font></font>
<br><font color="#CC33CC"><font size=+1>See below!</font></font>
<blockquote TYPE=CITE>On 2004-03-05 22:06:07 +0100 Jecel Assumpcao Jr <jecel@merlintec.com>
wrote:
<p>> On Friday 05 March 2004 15:56, Randy Smith wrote:
<br>>> Okay Albertina, I'll try to respond for you here: Self's GUI was
<br>>> never tuned to being like Motif or being fully brought up to address
<br>>> the construction of stand alone, single apps. Rather we were
<br>>> exploring the sense of a world in which many applications could
be
<br>>> created and recombined.
<br>>
<br>> Just to reinforce this idea by saying the same thing in slightly
different
<br>> words: if you define as a basic parameter of your project that it
will run as
<br>> a "normal" application in some environment such as Windows XP, Mac
OS X or X
<br>> Window then you are automatically excluding tools which include their
own
<br>> environments (such as Self or Squeak) from consideration. All you
have left
<br>> are scripting languages and things like C++ and in that case the
scripting
<br>> languages do indeed look like the best option.
<br>>
<br>> This is exactly the case mentioned in another thread by Stefan Urbanek.
One
<br>> of his requirements is that the application must run in the Cocoa
<br>> (NeXTStep/Mac OS X) environment. As Steve Dekorte pointed out, a
simple
<br>> scripting language like Io would more easily fit into this project.
Note that
<br>> there is nothing about the Self language itself that keeps us from
creating a
<br>> scripting version of it, just that only one person who has worked
on Self so
<br>> far has been interested in this (OpenSelf, but see my note at
<br>> <a href="http://www.merlintec.com:8080/Self">http://www.merlintec.com:8080/Self</a>).
<br>>
<p>Just to add a note to this... Self does not have any working GUI/app
framework that would be sufficient for creating an usable application.
And as I see it, Self will not have it in near future. What Self has, is
a great computational mechanism and different view on how to "model a problem".
Ant there is the power of Self. Yecel named it "scripting", others can
name it "integration" - with that both sides can gain. Application developers
will get powerful computational engine and Self will finally get users
(developers, testers, ...).
<p>The advantage of Self is not only "scripting". I think of scripts as
of some small pieces of code for automation or customisation. <font color="#CC33CC"><font size=+1>Well
Ousterhout thinks of scripting languages as designed for gluing. <i>They
assume the existence of a set of powerful components and are intended 
primarily for connecting components.System programming languages are strongly
typed to help manage complexity while scripting languages are typeless
to simplify connections among components and provide rapid application
development. in IEEE computer march 1998.</i></font></font></blockquote>
<i><font color="#CC33CC"><font size=+1>Scripting languages and system programming
languages are complementary, and most major computing platforms since the
1960s have included both kinds of languages. The languages are typically
used together in component frameworks, where components are created with
system programming languages and glued together with scripting languages.</font></font></i>
<p><font color="#CC33CC"><font size=+1>In his PHD thesis <i>Software-architeckturen
für die rahmenwerkbasierte Konstruktion grosser Anwendungssysteme
(Arquiteturas de software baseadas em framework para a construção
de grandes sistemas de aplicações) </i>that is an Umberto
Eco's semiotics application the connectors are the design patterns! These
are also small pieces of code for customisation. Hence what's the difference
between</font></font>
<br><font color="#CC33CC"><font size=+1>design patterns and scripts?</font></font>
<br><font color="#CC33CC"></font> 
<br><font color="#CC33CC"><font size=+1></font></font> 
<blockquote TYPE=CITE>The advantage is, as I have mentioned before, the
different computational model and well tested, fast runtime. Those are
features that no other (or very few) scripting languages/environments offer.
This moves Self to another, higher level, where one can use it not only
for small pieces of code. One can use it for larger (user customisable)
parts of an application. There are lots problems that can be solved in
Self much more easier than in C/C++/ObjectiveC.</blockquote>
<font color="#CC33CC"><font size=+1>I believe nobody has doubts about Self's
power of expressiveness.</font></font>
<blockquote TYPE=CITE> 
<p>How I see it? Application using one or more Self environments. Ok, now
I let my imagination go... What about stadard application as a frontend
to a distributed self environments on different machines?</blockquote>
<font color="#CC33CC"><font size=+1>This sounds great. Distributed Self
environments on different machines as the basis of a collaborative architecture.
Something</font></font>
<br><font color="#CC33CC"><font size=+1>like OpenCroquet (Alan Kay and
so on) intends to offer to develop applications written in Squeak?:-)!</font></font>
<blockquote TYPE=CITE>It's just an example, but you get the idea where
it should go...
<p>I am not a Self developer, I come from another world and I am just saying
how I see it from the outside. I think that a fight for a user environment
is lost at this time, what can be won is a battle for exceptional computational
environment/engine.
<br> </blockquote>
<font color="#CC33CC"><font size=+1>Best wishes</font></font>
<br><font color="#CC33CC"><font size=+1>Albertina</font></font>
<br><font color="#CC33CC"><font size=+1><A HREF="http://www.lsi.usp.br/~lourenci">http://www.lsi.usp.br/~lourenci</A></font></font>
<blockquote TYPE=CITE> 
<br>Stefan Urbanek
<br>--
<br><a href="http://stefan.agentfarms.net">http://stefan.agentfarms.net</a>
<p>First they ignore you, then they laugh at you, then they fight you,
then you win.
<br>- Mahatma Gandhi
<br> 
<p>Yahoo! Groups Links
<p><*> To visit your group on the web, go to:
<br>     <a href="http://groups.yahoo.com/group/self-interest/">http://groups.yahoo.com/group/self-interest/</a>
<p><*> To unsubscribe from this group, send an email to:
<br>     self-interest-unsubscribe@yahoogroups.com
<p><*> Your use of Yahoo! Groups is subject to:
<br>     <a href="http://docs.yahoo.com/info/terms/">http://docs.yahoo.com/info/terms/</a>
<br> </blockquote>
</html>