This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [using gcc book] ch1 objective-c blurb
On Monday, August 25, 2003, at 9:04 PM, Chris Devers wrote:
On Mon, 25 Aug 2003, Matt Austern wrote:
On Monday, August 25, 2003, at 08:37 PM, Chris Devers wrote:
More importantly, based on another branch of this thread, I'm not
sure
that the lack of a C intermediate is a significant assertion anyway.
I don't think it is an interesting assertion. It's a true statement,
but you can make lots of true and uninteresting statements about
intermediate representations that the compiler doesn't have. (e.g.
the C compiler doesn't use Fortran as an intermediate language.)
Great, you agree, but what then *would* be an interesting assertion?
A brief discussion of what kind of language Objective C is, what kinds
of problems it's supposed to solve, a link to Brad Cox's original
work on the language (Object-oriented Programming, An Evolutionary
Approach), and maybe a brief discussion of the ways in which Objective
C and C++ differ. Roughly: Objective C is an object-oriented extension
to C that makes it possible to combine C with Smalltalk-style designs.
The Objective C object model, and the message-sending syntax, were
deliberately modeled on Smalltalk. Objective C differs from C++ in that
it favors a more dynamic programming model with less static type-
checking, and in that it is a much simpler extension to C. Objective C
is used by the free GNUStep application framework and by Apple's
Cocoa framework. There is also a combination of Objective C and C++,
called Objective C++. [Objective C++ hasn't yet been integrated into
GNU gcc, but by the time this book comes out it may have been.]
You shouldn't use what I wrote verbatim; you should probably reword it,
expand it, maybe correct some details, and maybe include some details
about the ways in which ObjC has evolved since Brad Cox's original
work. But I think that's the sort of information that users would care
about. Most users have no reason to care about low-level implementation
details like the compiler's intermediate representation.
--Matt