[comp.lang.c++] C++ considered ready to face the world?

garry@ithaca.uucp (Garry Wiegand) (01/24/91)

I like what I've seen of C++ so far - a lot of the subtleties are
like twisty little passages all alike, but if you avoid these by
building up some strong guiding coding customs then C++ looks like
it could be a lot of fun, and sensible.

So I am getting ready to spec C++ as the language to be used for a
large (about 100K lines w/o comments) new project here. The project
must in the end be portable to essentially every workstation, most
supers, many micros, and a few mainframes. My strong preference
would be to have a C++ compiler or translator available on each and
every machine; in up to a few cases we could live with carrying over
the C output of a translator running elsewhere. 

I have been listening to the discussion about g++ and I am feeling
nervous: do people believe that C++ is mature enough now to really
face the world? Can the implementations of this language bear the
load of a real-world project? 
 
To give some specifics, I can see that there will probably be
"usable" real compilers available for PCs, Macs, and a majority of
the workstations (dec, hp, apollo, sun, sg) in time for the porting
phase of the project (9-12 months from now.) Am I right in this? 

For "all the others", I suppose I'm going to need to use C++-to-C
translators. The only translator I know about so far is AT&T's
cfront. Is it the only one? Is there any PD one that I could 
port to strange machines myself?

I do not have a copy of cfront yet; can I feed in the
characteristics of any arbitrary back-end C compiler (I'm thinking
of the basic sizeofs plus knowledge of struct packing) and have it
produce correct appropriate C code? 

Even better, can cfront produce C code that is clever enough to be
directly portable to an arbitrary machine, without further ado?

[I have reason to worry about language portability: it's only been
in the last 12 to 24 months that regular C compilers have gotten
stable enough that we don't have to jam "workarounds" into our
source all the time. When we started, in 1986, the C world was a bit
of a mess.] 

many thanks for your thoughts

Garry Wiegand    ---    Ithaca Software, Alameda, California
...!uunet!ithaca!garry, garry%ithaca.uucp@uunet.uu.net

chip@tct.uucp (Chip Salzenberg) (01/26/91)

According to garry@ithaca.uucp (Garry Wiegand):
>So I am getting ready to spec C++ as the language to be used for a
>large (about 100K lines w/o comments) new project here.

Our project is about a tenth of that in size.  G++ 1.37.1 seems to be
holding up well.

I feel much more secure about G++ than I would about a commercial C++
compiler, since compiler bugs can be fixed or not as I choose.

>To give some specifics, I can see that there will probably be
>"usable" real compilers available for PCs, Macs, and a majority of
>the workstations (dec, hp, apollo, sun, sg) in time for the porting
>phase of the project (9-12 months from now.) Am I right in this? 

Yup.  GCC 2.0 will include what is now called G++ (and Objective C as
well, if I am not mistaken).  No dates have been forthcoming from the
dudes in Boston, but I'd be very surprised if the first release isn't
available by summer.  And G++ 1.37.1 is available as a backup.

And of course there are the commercial compilers; you'll need to buy
at least two for the MS-DOS and Macintosh environments, and any CPUs
not supported by GNU compilers can be covered that way.
-- 
Chip Salzenberg at Teltronics/TCT     <chip@tct.uucp>, <uunet!pdn!tct!chip>
 "I want to mention that my opinions whether real or not are MY opinions."
             -- the inevitable William "Billy" Steinmetz

sarima@tdatirv.UUCP (Stanley Friesen) (01/26/91)

In article <1991Jan24.085547.910@ithaca.uucp> garry@ithaca.uucp (Garry Wiegand) writes:
 
>I have been listening to the discussion about g++ and I am feeling
>nervous: do people believe that C++ is mature enough now to really
>face the world?

Yes, I think so.  The main problem with g++ right now is that it is not
really compatible with the 'standard' (i.e. the Annotated Reference Manual).
I suspect that this will change very quickly.
> 
>To give some specifics, I can see that there will probably be
>"usable" real compilers available for PCs, Macs, and a majority of
>the workstations (dec, hp, apollo, sun, sg) in time for the porting
>phase of the project (9-12 months from now.) Am I right in this? 

Most of these are available right now.  Both Zortech and Turbo C++ are
excellent products.  Zortech is 'non-standard' only in its lack of the
modern streamio interface.  All versions of Unix have one or more versions
of C++ available, either cfront from ATT, or some clone thereof.
Does anyone know, is there a Mac version of C++ yet?

-- 
---------------
uunet!tdatirv!sarima				(Stanley Friesen)

mce@tc.fluke.COM (Brian McElhinney) (01/30/91)

sarima@tdatirv.UUCP (Stanley Friesen) writes:
>Does anyone know, is there a Mac version of C++ yet?

Apple has a cfront 2.0 C++ that runs under their MPW environment.  It
includes extensions for inheriting from Object Pascal objects (mixing
languages via inheritance doesn't strike me as a wonderful idea, but it
does allow you to inherit from their MacApp library).

Symantec (THINK C aka LightSpeed C) is rumored to be working on a C++
version of their stand-alone compiler/debugger environment.  The initial
release will not support MacApp, or so the rumor goes.

I am not aware of a C++ that runs under AU/X, although I'm sure someone,
somewhere, has unofficially ported g++.
 
 
Brian McElhinney    "If a squirrel crawls into an electric transformer and
mce@tc.fluke.com    explodes, does it make a noise hear over two block away?"
					    --From ZEN FOR AMERICANS, by me.

Jim.Spencer@p510.f22.n282.z1.mmug.edgar.mn.org (Jim Spencer) (01/31/91)

Brian Mcelhinney writes in a message to All

BM> Apple has a cfront 2.0 C++ that runs under their MPW environment. 
BM> It includes extensions for inheriting from Object Pascal objects 
BM> (mixing languages via inheritance doesn't strike me as a wonderful 
BM> idea, but it does allow you to inherit from their MacApp library). 

This is, of course, the only real reason that it was done.
 

--  
Jim Spencer - via The Minnesota Macintosh Users Group UUCP-Fido Gateway
UUCP: ...uunet!tcnet!kksys!edgar!mmug!22.510!Jim.Spencer
INET: Jim.Spencer@p510.f22.n282.z1.mmug.edgar.mn.org

keithb@hpwarch.hp.com (Keith Bagley) (02/07/91)

In article <1991Jan29.205834.9765@tc.fluke.COM> mce@tc.fluke.COM (Brian McElhinney) writes:
>sarima@tdatirv.UUCP (Stanley Friesen) writes:
>>Does anyone know, is there a Mac version of C++ yet?
>
>Apple has a cfront 2.0 C++ that runs under their MPW environment.
>
>Symantec (THINK C aka LightSpeed C) is rumored to be working on a C++
>version of their stand-alone compiler/debugger environment. 
>
>Brian McElhinney  

Also, Zortech is now porting their C++ compiler to the Mac.  It will run
under MPW and support MacApp.  They are also supposedly developing a
stand-alone compiler/debugger environment ( probably similar to TC++ or
THINK C ) which will be released sometime later.  In any event, the people
at Zortech say the Mac C++ compiler is now in beta testing, and should be
released very soon.

Keith