Xref: utzoo comp.lang.eiffel:242 comp.lang.c++:3584 Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!cs.utexas.edu!uunet!mcvax!ukc!dcl-cs!aber-cs!aro From: aro@aber-cs.UUCP (Andrew Ormsby) Newsgroups: comp.lang.eiffel,comp.lang.c++ Subject: Re: Eiffel vs. C++ Message-ID: <988@aber-cs.UUCP> Date: 6 Jun 89 10:24:36 GMT References: <2689@ssc-vax.UUCP> Reply-To: aro%cs.aber.ac.uk@nsfnet-relay.ac.uk (Andrew Ormsby) Distribution: eunet,world Organization: CS Dept, University College of Wales, Aberystwyth Lines: 46 In article <2689@ssc-vax.UUCP> dmg@ssc-vax.UUCP (David Geary) writes: > I've been programming in C for about 5 years, and >just recently started using C++. I would like to >start a discussion of Eiffel vs. C++. I understand >that both languages use C as a base language, and >that both implement OOP features, and it seems as >though the two have much more in common, aside from >syntactic differences, than they have differences. It is true that current implementations of Eiffel use C as a base language. With Eiffel, however, the use of C is really as a portable assembler that the Eiffel translator can compile into. This has presumably greatly reduced the development costs of the compiler for Interactive Software Engineering, Meyer's firm. There is the added advantage that it enables them to make use of the machine dependent optimisers that are usually part of the C compilation systems on various machines. However, I would contend that the fact that Eiffel uses C as a "base language" is only an implementation detail. C++ is very different. To quote Stroustrup in the introduction to the C++ book, "Except for minor details, C++ is a superset of the C programming language". C++, quite deliberately, therefore ends up looking very much like C. While most current C++ translators are implemented as preprocessors for C compilers, there are a growing number of true C++ compilers. My view is that C++ is what people should be using as an alternative for C in applications where C was really necessary; where there are programmers around who know how to use it properly. My worry is that C++'s additional complexity over and above C will make it even more likely that bad C++ programs are written. Eiffel may be more appropriate as a general purpose language; my personal opinion is that it looks likely to be less easily misused. However, C++ is widely available and cheap. Eiffel is less widely available and rather expensive. Its a shame. >~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >~ David Geary, Boeing Aerospace, Seattle ~ >~ "I wish I lived where it *only* rains 364 days a year" ~ >~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Andy Ormsby, aro@cs.aber.ac.uk Department of Computer Science, aro%cs.aber.ac.uk@nsf-relay.ac.uk University College of Wales, aro%cs.aber.ac.uk@ukacrl.bitnet Aberystwyth, Dyfed, UK, SY23 3BZ.