Article View: comp.lang.misc
Article #4738Re: need info on C++ vs Object Pascal vs Objective C vs etc
From: David Goldsmith
Date: Wed, 01 Jul 1987 23:15
Date: Wed, 01 Jul 1987 23:15
39 lines
2667 bytes
2667 bytes
In article <7037@alice.UUCP> shopiro@alice.UUCP writes:
>> 2) Is Object Pascal good?
>
>I don't really have an opinion. It is Pascal. It runs on a Mac.
>It provides support for object-oriented programming (methods),
>but not for data abstraction (data hiding, operator overloading,
>etc.). It is simpler than C++, but then it isn't used for such a
>large range of applications on such a large range of systems as C++.
>
>> Is it available (or will it be soon) for machines other than the Macs? Will
>> it become a standard, or will it remain an Apple oddity?
>
>For what it is worth I can mention that Apple is adopting a subset of C++
>called ``minimal C++'' as their C and that they are re-writing MacApp
>in C++. For details, ask Larry Tesler at Apple.
We are producing a version of C++, and you will be able to access MacApp
from it, but MacApp itself will remain in Object Pascal.
Just for fun, I thought I'd mention the one big remaining objection I have to
C which isn't fixed by C++: the inability to use closures. By this I mean
the facility which is provided by blocks in SmallTalk, LAMBDA in LISP, and
nested procedures in Pascal. This allows you to encapsulate a bit of code
with the current lexical scope and pass it to another procedure. We use
this capability of Pascal heavily in MacApp and its lack in C++ makes use
of MacApp a little akward. I remember the original "Block Structure is
for The Birds" paper, but I think this is one use of nested scope which the
designers of C missed. It would be nice if there were some way to do it
in C++. The code you pass is basically a procedure, but it doesn't have
to have a name (nested procedures in Pascal do, but SmallTalk blocks and
Lisp lambdas don't).
--
David Goldsmith
Apple Computer, Inc.
AppleLink: GOLDSMITH1
UUCP: {nsc,dual,sun,voder,ucbvax!mtxinu}!apple!dgold
CSNET: dgold@apple.CSNET, dgold%apple@CSNET-RELAY
BIX: dgoldsmith
Technical Details
Message-ID:
<1238@apple.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!mnetor!seismo!rutgers!princeton!udel!rochester!cornell!batcomputer!pyramid!voder!apple!dgoldReferences:
<2016@sphinx.uchicago.edu> <7037@alice.UUCP>Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!rutgers!princeton!udel!rochester!cornell!batcomputer!pyramid!voder!apple!dgold From: dgold@apple.UUCP (David Goldsmith) Newsgroups: comp.lang.misc,comp.lang.c++,comp.lang.pascal Subject: Re: need info on C++ vs Object Pascal vs Objective C vs etc Message-ID: <1238@apple.UUCP> Date: Wed, 1-Jul-87 19:15:25 EDT Article-I.D.: apple.1238 Posted: Wed Jul 1 19:15:25 1987 Date-Received: Fri, 3-Jul-87 04:42:11 EDT References: <2016@sphinx.uchicago.edu> <7037@alice.UUCP> Reply-To: dgold@apple.UUCP (David Goldsmith) Organization: Apple Computer Inc., Cupertino, USA Lines: 39 Keywords: elegance popularity portability