[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Objective-C - Smalltalk bridge
From: |
Marcel Weiher |
Subject: |
Re: Objective-C - Smalltalk bridge |
Date: |
Sun, 22 May 2005 12:09:04 +0100 |
On 21 May 2005, at 23:51, Nicolas Roard wrote:
What is Objective-Smalltalk? In a nutshell: a Smalltalk syntax
for the Objective-C runtime + language semantics. So there are no
proxies and no two runtimes that have to talk to each other. This
allows Objective-ST to be very compact, currently only around 1.5
KLOC, with several hundred of those being the unit tests. That
includes a basic compiler/interpreter (compiler for the syntax,
'interpreter' for running the returned Objective-C objects that
represent a script/method) ready for integration. It is still
early days, but good enough to use in some of my shipping products.
is it possible to play with it already ? else, any release planned
soon ? and what licence do you think you will use ?
I find it quite playable, but haven't released anything yet. I do
want to open it up as soon as possible, because one of Objective-
Smalltalk's primary goal is to be adaptable for a wide variety of
contexts, and the only way to do that is for people to use it in
different contexts.
For example, awk's dispatch mechanism is really quite similar to OO
dispatch, except that OO dispatches on a fixed string, whereas awk
dispatches on a string pattern. I wouldn't want to add that to an OO
language, but 'subclassing' the language for that specific
circumstance sounds just fine...
Another part: stsh, a smalltalk shell, both for interactive and
scripting use.
that's really interesting :-) -- now I want it :-D
:-D
With NSDecimalNumbers set as default number literals, stsh also makes
for a fairly decent 'dc' replacement, at least for my modest needs.
I've wanted an OO shell for quite some time...and had it for a while
when bbum created the WebScript shell. Very, very useful, but
WebScript was closed source, only available with WO and then went
away. In fact, that was one of the motivations for Objective-
Smalltalk, except that on thinking about it, it didn't seem to make
much sense to create an interpreter for Objective-C, when all that I
was really interested in was the Objective- side.
Anyway, one direction I'd also like to see is stsh used as a true sh/
bash/csh/zsh/... replacement. This has also been on my mind for some
time, and it really annoys me that MS now seems to have beat me to it:
http://weblog.infoworld.com/udell/2004/11/02.html#a1106
http://www.eweek.com/article2/0,4149,1550180,00.asp
http://dotnetjunkies.com/WebLog/stefandemetz/archive/
2004/04/20/11794.aspx
However, I still think we can do a better job.
In the works: a gcc front end, though that is *quite* a
struggle. Doing a JIT might be simpler... :-(
another question though, do you have a garbage collector ? Hm... I
guess there's probably no GC, as in fact Objective-Smalltalk just
provides a different "syntax" to access the objc runtime ?
You guessed right: SEP! :-)
Ah, and how tied is it to the NeXT runtime (apparently, it runs on
OSX, not on GNUstep) ?
Not much at all. The ObjC -> ST method interfaces may require a bit
of tweaking, but dispatch is currently handled via NSInvocation and
should therefore port OK (though a move away from NSInvocation is
desirable).
Regards,
Marcel