On Fri, 10 Dec 1999, Chris Powell wrote: > Pascal Obry wrote: > > Richard D Riehle a écrit dans l'article > > <829rbv$a8m$1@nntp6.atl.mindspring.net>... > > > Smalltalk is certainly a nicely designed language. However, > > > if one is serious about object-oriented programming, > > > Ada is an excellent choice. The only appropriate alternative > > > to Ada, for serious OOP, is probably Eiffel. > > > > I second that. For me the 2 bests designed languages for serious > > (read industrial) OO development are Ada and Eiffel. > > > > Pascal. > > I would not recommend Ada 95 for OO development. Okay, it has all the > benefits of Ada 83 for type safety, etc, but the syntax of its class > programming constructs seems to make the code long winded, obscure and > error prone. I can give examples if anyone is interested/disagrees. Yes, examples please. > I suppose C++ is a swear word in this newsgroup, but I prefer it, even > though I preferred Ada 83 to C. C++ is more type safe than C, the > Standard Template Library (if used) can protect from memory leaks, array > bounds checking, etc; the sorts of problems that made C unsuitable for > 'industrial strength' development. (Ironically, C has been used for lots > of very serious software, though). Prefer C++ in general, for "OO" development, what? C++ certainly has a few things I like that Ada doesn't, and while everything you say is true, its not enough for me. While C++ offers greater type safety than C, it offers its own loopholes as well as most of the C ones. I still prefer Ada, which is far safer. The STL is cool, and you can certainly do a variant in Ada. The Ada version loses some of the readability of the C++ version IMO due to all of the instantiations but really gains in other ways since you can express typing information directly in the generic. Another powerful feature of Ada generics is the ability to pass subprogram arguments; when combined with subprogram nesting the Ada STL has more useful functional programming capability than the C++ one. Of course, none of this is really OO, but I think OO is way overrated anyways. Since you mention STL in the same paragraph as OO, I suppose I should ask you what you mean by OO. Most people wouldn't consider the STL OO, including its authors. I suppose I could be convinced that C++ is more convenient for a "pure OO" style of programming than Ada. Let's see those examples... -- Brian