Remember: the runtime is where the music is, the "language" bit
of Objective-C is just a little bit of syntactic sugar thrown on top.
I'm slightly confused. Didn't you just explain that the 'language'
is more than just the syntax?
Yes, and this applies to Objective-C just as any other language.
Except that semantically, Objective-C is just plain old C, the
"language" part of Objective-C (you did notice the quotes?) doesn't
add any semantics to C (apart maybe from static type checking of
message sends, but that is a compile-time only feature).
Again, the semantics are in the runtime, and that is not a language-
level feature, it is just a plain C library, and can be used pretty
much 1:1 from plain C (without the "Objective" syntax extensions).
It is probably helpful to not think of Objective-C as a language at
all, but as an object execution engine to which different languages
can be attached (incidentally, this is how Squeak is referred to in
the book describing its internals). As long as you agree on basic
object layout and how message-sending works, the language doesn't
The difficulty most bridges have to overcome is that the languages
involved don't agree on this. Otherwise, you really could have Java
and Objective-C (amongst others) transparently bridged.
Once stuff is compiled, as long as it interoperates with
objc_msgSend(), who cares what syntax you used to specify it?
Well, if there is "language level GC", you would need to type the
stack, registers etc. So you couldn't just rely on objc_msgSend as
the lowest common denominator?
One of the difficulties with "language level GC"...
Could be Objective-Assembler for all anyone would know...
Isn't that called CLR? ;-)
Not really. It is any old assembly language enriched with a message-
However, you are absolutely right that the "Objective-C" runtime
certainly can be seen as a very lightweight CLR, and I don't see why,
for example, gcj couldn't be modified to emit objects/code compatible
with this runtime.
p.s.: For a good discussion about syntactic sugar and other
programming language concepts, I recommend: "Concepts, Techniques,
and Models of Computer Programming", by Peter van Roy and Seif
Haridi. ( http://www.info.ucl.ac.be/people/PVR/book.html ).
Actually, I found this a very insightful and inspiring read. Alas,
the pre-print PDF seems to have disappeared...
Marcel Weiher Metaobject Software Technologies
Metaprogramming for the Graphic Arts. HOM, IDEAs, MetaAd etc.
Do not post admin requests to the list. They will be ignored.
Objc-language mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden