Subject: Re: inheritance versus genericity (Was: C++ briar patch)
From: Erik Naggum <erik@naggum.no>
Date: 1997/05/15
Newsgroups: comp.lang.scheme,comp.lang.lisp,comp.lang.misc,comp.lang.functional,comp.lang.c++
Message-ID: <3072645194255534@naggum.no>


* Bjarne Stroustrup
| Given the time that Lisp has been around (and CLOS), and given the number
| of organizations that has been involved in Lisp-related research, I do
| not think that it is obvious that more money has been spent on C++
| compilers.  I suspect that it is not the case.

hm.  how long do you think CLOS has been around?  IIRC, you started on C++
before 1980.  the first widely available CLOS "user guide" was published in
1989, and a specification in 1990, although a lot of experiments with other
object-oriented languages had been going on in the Lisp community.

the Lisp family has one easily identifiable problem that other language
families have avoided: Fortran has had version numbers or years added to
it all along its developmental route, and Ada83 is not Ada95.  however,
"Common Lisp" is the name of two languages, possibly three (Common Lisp the
Language, 1st (CLtL1, 1984) and 2nd (CLtL2, 1990) edition, and the final
ANSI standard (ANSI-CL 1994)).  "Lisp" is moreover the rightful name of
_lots_ of languages.  C and ANSI/ISO C are close enough that "C" is now
largely synonymous with "ANSI C", but C++ is as different from C as ANSI
Common Lisp is from Common Lisp the Language, 1st edition.  however, people
who were dissatisfied with Lisp in 1965 can still proclaim to be talking
about "Lisp" as if nothing had happened since then, albeit with limited
credibility.

so, how much money has been spent on Common Lisp and CLOS compared to C++?
note that you have to subtract all the money on C from C++ and all the
money on Lisp from Common Lisp and CLOS.  do you still think you have a
case?  I don't.

last time I heard, Borland and Microsoft spent more than a billion dollars
each on their C++ environments, and that nearly killed Borland.  a similar
stunt to produce a C++ environment _did_ kill Lucid, Inc, a very successful
Lisp vendor.  (it's Lisp product survived, the C++ efforts didn't.)

| One problem with C++ is exactly that the PC compiler suppliers spends FAR
| more on windows-related GUI flash than on their compilers (i.e. on the
| part of the software development environment that is devoted to getting
| the source text correctly translated into efficient object code).

isn't this true for _all_ products in the PC world?  PC programmers don't
seem to care about compiler or language conformance at all.  it needs to
"look cool" and "run fast" and if it works correctly most of the time, too,
hey, that's great, but no real requirement.  such programmers seem content
to test their code against the compiler and see if the machine does what
they expect it to do.  they write code that behaves as they want in testing
instead of code that follows the specification of the language.  in fact,
they write code for the specific machine, operating system and compiler
_instance_, not _any_ specification, and nobody in their right mind would
want to port PC software to a _real computer_, so who cares if all the
programmers there really program in assembly, anyway?  (although it looks
like a high-level language to the untrained observer.)  whatever comes
after Bill Gates' multi-billion-dollar fraud operation is exposed sure
isn't going to be written by people who have this mindset, however many
millions they number today.

if there is any justice in this world at all, the mechanisms that caused
people to shy away from Lisp because of perceived problems in the past
related to hype and delivered products will hit C++ with even more force.
I derive some peace of mind from this.

#\Erik
-- 
C++ is an object-oriented assembly-line programming language.