[comp.sys.amiga] LATTICE C V5 / C++ V1

xanthian@zorch.SF-Bay.ORG (Kent Paul Dolan) (06/28/90)

In article <90177.165517UH2@psuvm.psu.edu> UH2@psuvm.psu.edu (Lee Sailer) writes:
>The difference between C and C++ is that they are two different (though related
>languages.  C is the C everybody knows and loves 8-).  C++ is an up and coming
>superset of C (very super) that adds object oriented features to C while
>trying to maintain maximum upward compatibility with C.
>
>In short, if you want C, you don't need to buy C++.
>
>                                                   lee

More than that, as I found to my sorrow when I bought Lattice C++, even
though C++ is explicitly defined to be a completely upward compatible
superset of C, the Lattice C++ distribution, at incredibly high cost,
doesn't bother to include the files needed to compile vanilla Amgia C
code, and only includes one of their early, buggy C compilers.  I was not
at all impressed by the value I got for my C++ dollar from Lattice.  This
is fairly typical of software that has no existing competition:  there's
simply no pressure to do the job right.

Kent, the man from xanth.
<xanthian@Zorch.SF-Bay.ORG> <xanthian@well.sf.ca.us>
--
In the 1960's Soviet and American tanks faced each other there, gun barrel
to gun barrel at a range of several feet.  In the 1990's Checkpoint Charlie
had become a traffic hazard, and its new home is in a museum.
      -- Chairman of the Joint Chiefs of Staff General Colin Powell,
         National Public Radio, National Press Club Speech.

marco@gensof.strhold.sublink.ORG (Marco Dabbene) (06/29/90)

in article <1196a604fca7267f495c@canremote.uucp>, darcy.otto@canremote.uucp
(DARCY OTTO) says:
> 
>   First off, what is the difference between Lattice C v5 and Lattice C++
> v1?  It seems to me as if Lattice is a better choice than Manx at this
> point, because more people seem to use Lattice, and its price (last time
> I checked, which was before v5) was lower.
> 

The first is the standard C compiler with many ANSI extension (or all ?!!...
i really don't know exactly!). The latter is the object-oriented version of
the same compiler. If you are not going to program using this type of
programming you can use the first (that costs less than the C++ version!).

Note: if you have to compare Manx and Lattice compilers you MUST compare
the standard compilers and not the object-oriented versions (even because
i didn't hear of a C++ compiler from Manx..).

					Bye,
						Marco.

----------------------------------------------------------------------------
|                    | General Software SrL     ***    Strhold Sistemi EDP |
|       Marco        | Via Dante 4 I 20122 Milano       Fax +39 2 72001474 |
|       Dabbene      | Voice +39 2 872732 / 72002222    Data +39 2 8690294 |
|                    |     Sublink: marco@gensof.strhold.sublink.ORG       |
----------------------------------------------------------------------------
    'The bell that rings inside your mind,
        is challenging the doors of time' (QUEEN - 'A kind of magic' - 1985)
----------------------------------------------------------------------------

daveh@cbmvax.commodore.com (Dave Haynie) (07/04/90)

In article <1990Jun27.201717.8938@zorch.SF-Bay.ORG> xanthian@zorch.SF-Bay.ORG (Kent Paul Dolan) writes:

>More than that, as I found to my sorrow when I bought Lattice C++, even
>though C++ is explicitly defined to be a completely upward compatible
>superset of C, the Lattice C++ distribution, at incredibly high cost,
>doesn't bother to include the files needed to compile vanilla Amgia C
>code, and only includes one of their early, buggy C compilers.  

Originally, both somewhat true.  The C++ compiler didn't come out until
just before Lattice 5.00 shipped, but it used as a backend the Lattice 4.xx
compiler.  While I didn't find Lattice 4.xx all that buggy, it certainly
wasn't as clever about things as 5.0.  Lattice, however, did ultimately
provide a version of the CC program for C++ that would use Lattice 5.0 as
a backend, rather than 4.0.

As for the upward compatibility, the main thing that was left out of the
C++ distribution originally was the documentation.  There was apparently a
question at Lattice as to what actually was a supported part of the C
libraries under C++.  The C++ language IS defined as a superset of C.  But
not necessarily a superset of ANSI C, since the ANSI specification is
more recent than C++.  In any case, Lattice ultimately decided that the
whole Lattice C compiler library was part of C++, and sent out a book if
you registered your copy that documented all the Lattice C calls.  

What that still left out, and this I agree with, was any documentation on 
the actual C compiler itself.  That is a good thing, since I really hope
they eventually build a C++ replacement for LC1, rather than going the
CPP->CFRONT->LC1 route they presently take.  That should make C++ compile
significantly faster, but of course eliminates the plain C compiler
completely.

>Kent, the man from xanth.
-- 
Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
	"I have been given the freedom to do as I see fit" -REM

phorgan@cup.portal.com (Patrick John Horgan) (07/08/90)

marco@gensof.strhold.sublink.ORG said...
|in article <1196a604fca7267f495c@canremote.uucp>, darcy.otto@canremote.uucp
|(DARCY OTTO) says:
|> 
|>   First off, what is the difference between Lattice C v5 and Lattice C++
|> v1?                                 .
                                       .
                                       .
|The first is the standard C compiler with many ANSI extension (or all ?!!...
|i really don't know exactly!). The latter is the object-oriented version of
|the same compiler.                    .
                                       .
                                       .
I'm pretty sure that C++ V1 came out before the ANSI "compatible" C V5.  This
would imply that the C compiler that is part of the C++ is NOT ANSI 
compatible.

Patrick Horgan                           phorgan@cup.portal.com