[comp.sys.amiga] C++ on the amiga; a summary

ralph@atrp.mit.edu (Ralph L. Vinciguerra) (08/14/90)

Thanks to all of you who sent me information.
I guess my conclusion is that I'm going to wait until Lattice, Manx,
or someone else comes out with a more modern version of C++.
I'm using version 2.0 at work, and the only version available is
an older one. Folks said the documentation was thin, and
C++ often caused more problems than it was worth.

Since I'm interested in the C++ style, I'm developing a way to
program with a similar style, but using plain C. It takes more work and
looks weird, but it should migrate to C++ when a good version comes along.

I clipped some of the comments from folks and included them below.
Thanks again!

-----------------
From: mit-atrp!randy@csseq.MIT.EDU (Randy Hutson)

I own Lattice C++ and think it is really pathetic.  The translator
is based on AT&T C++ 1.1.  The language it compiles is fairly obsolete
now.  It's very slow, uses a lot of memory, and causes too many GURUs.
The translator is shipped with the Lattice 4.0 C compiler which is
fairly old now (Lattice C is up to 5.05 now).  Two manuals are shipped
for the C++ translator (a user's guide and a reference guide). No manuals 
are shipped for the C compiler, so unless you have separately bought the 
Lattice C compiler as well, you're out of luck if you have problem or
question with the C compiler.  I registered my compiler, but have heard
no word of an upgrade to a newer version of C++ (I bought my compiler
last fall).  I read in the newsgroups that the C++ compiler was not 
written by Lattice (SAS) but was instead written by a contractor hired 
by Lattice.  The person who wrote the compiler has reportedly moved
on to other things.

I don't plan to ever purchase another Lattice product again.
I own Aztec C 5.0 and am pleased with it.  I haven't heard
of a C++ compiler by Manx, but I plan to wait or do without
(I find the Lattice C++ compiler unusable) until or if Manx 
sells a C++ compiler.

So in summary, I'd advise you not to buy Lattice C++.  :-)

------------------
From: mit-atrp!dcl@ncsc1.att.com

Unless you have the patience of a saint, don't waste your time on
the current Lattice C++.  Don't misunderstand, I really do like 
Lattice (I just upgraded to their 5.10 compiler this morning), but
their C++ has serious problems.

LC++ is based on AT&T's V1.1 (yes, 1.1) C++ front-end.  As such, it
is missing many (most?) of the best features of C++ V2.1 (multiple 
inheritance, pure virtual classes, etc.).  It is also extremely 
unstable.  On a UNIX system, where it can dump core, this really 
isn't a problem.  On the Amiga, where it gurus during the pre-
processor stage with no warning, it is a royal pain.  I've got
some example code I was working on which compiles fine; however,
if I reverse the order of two independent functions within the 
module, the pre-processor will guru.  Everytime a bug popped up,
I had to figure out if it was theirs or mine.  CPR (the debugger)
doesn't understand C++ name mangling, so debugging (assuming you
can get past the pre-processor) is also interesting.

Lattice (now SAS) is working on a native-code C++ compiler which will
be fully compatible with V2.1.  If I were you, I'd wait for it.

--------
From: mit-atrp!eeh@btr.com (Eduardo E. Horvath  eeh@btr.com)

	The question isn't very clear.  It works.  There are some problems.
The error messages are rather confusing ( what does CLASS NOT COMPLETELY
DEFINED mean? ) and there are some rare occations when the C compiler (that
generates the executable) chokes on cfront's output.  I have never had
cfront crash.

	The current cfront is from version AT&T version 1.2 (?) not 2.0.
Lattice is said to be working on a compiler (as opposed to preprocessor) that
is compatible with version 2.0

	The Lattice product comes with a complete class library for most
Intuition, Exec and AmigaDOS structures.  I haven't found any holes, but I
haven't looked that hard.

	My experience is that the source-code debugger doesn't work for C++.
Maybe the next release.

------------
From: mit-atrp!cbmtor!sjorr@uunet.UU.NET (Stephen Orr)
To: ralph@atrp.mit.edu
Subject: Re: Lattice C++ recommendations?

I have Lattice C++ and can offer this information,

	1) It is NOT 2.0

	2) It wasn't written by Lattice, or for that matter SAS, and
	as such doesn't support some of the newer compiler 'niceties'
	like 'chip' keywords, or for that matter full use of the debugger

	3) The documentation is fairly sparse. I have implementation
	problems, and even compiler problems, This may mean that I don't
	adequately understand C++ (probable) but the book they supply
	does not in itself go far enough either.

	4) At present SAS does not have C++ (I talked to them 3 days ago)
	and so they have no idea about future enhancements etc.

	5) I find that using C++ in it's present form will SLOW YOU DOWN
	rather than speed up your development.

	6) Lattice includes a set of 'C++ized' includes which include
	a set of very sensible methods and classes for a significant
	portion of the Amiga's OS....