rick@tetrauk.UUCP (Rick Jones) (06/10/91)
In article <1991Jun6.225355.18611@netcom.COM> jls@netcom.COM (Jim Showalter) writes: >>> Note that this in no way indicates a change to my bedrock conviction that >>> Ada is the superior technical choice between the two languages for >>>engineering large complex systems. >>> -- > > [ a very well stated rationale of what makes a good programming language ] Well said Jim! The concepts behind a language, the culture it embodies, and what it _helps_ you to do is far more important than what it is possible to do if you try hard enough - regardless of how many other people are trying equally hard. If you want to take the engineering concepts of Ada, together with its syntax style, and evolve a fully object oriented language based around classes with multiple inheritance, dynamic binding, genericity, etc, what do you get? Answer - Eiffel. OK, it's not been around as long as Ada, but there is a new, complete, definition of the language soon to be published in book form, and an independent consortium "NICE" which holds the rights to that definition. NICE has the responsibility to validate Eiffel compilers, and will soon be taking steps to set up that process - watch this space. Eiffel needs some more time to fully mature, but as Jim pointed out, C++ needs a lot more time than many people seem to imagine; not just with the language but with everything which surrounds it. Perhaps the real choice should be between Ada and Eiffel - and I don't imply that I believe Eiffel is always preferable. In many cases Ada will still be the better choice, but Eiffel offers the same approach within a "pure" object-oriented context. C++ is not the only option. -- Rick Jones, Tetra Ltd. Maidenhead, Berks, UK rick@tetrauk.uucp Chairman, NICE (Non-profit International Consortium for Eiffel) Any fool can provide a solution - the problem is to understand the problem
jls@netcom.COM (Jim Showalter) (06/11/91)
>Perhaps the real choice should be between Ada and Eiffel - and I don't imply >that I believe Eiffel is always preferable. In many cases Ada will still be >the better choice, but Eiffel offers the same approach within a "pure" >object-oriented context. C++ is not the only option. My advocacy of Ada has always been based on my belief that it represents a superb vehicle for software engineering. Other software engineering oriented languages have appeared on the scene, and I've started learning them too--I hope to soon be able to add Eiffel and Modula-3 to my .sig. The only real problem I have with some of these other languages now is maturity--it took a long time (about twice as long as expected) for real compilers and other tools to become available for Ada, and the same can be expected for these other languages (indeed, without the sort of funding Ada got from the DoD, progress could be even slower). On the plus side, there isn't the DoD "taint" to be reckoned with, so commercial acceptance may be easier. I certainly hope so--these other languages provide a valid alternative to the headlong dash toward C++. In the end, the critical thing is not so much that a software development organization choose Ada instead of Eiffel, or Modula-3 instead of C++. The truly important thing is that a software development organization choose ANY of these four languages to help it convert to modern software engineering practices, rather than sticking with FORTRAN, COBOL, C, etc. Trying to engineer software with languages invented 20-30 years ago makes about as much sense as trying to build skyscrapers with a stone axe. -- **************** JIM SHOWALTER, jls@netcom.com, (408) 243-0630 **************** *Proven solutions to software problems. Consulting and training on all aspects* *of software development. Management/process/methodology. Architecture/design/* *reuse. Quality/productivity. Risk reduction. EFFECTIVE OO usage. Ada/C++. *