From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: *** X-Spam-Status: No, score=3.2 required=5.0 tests=BAYES_00,RATWARE_MS_HASH, RATWARE_OUTLOOK_NONAME autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,70016ed51014902d,start X-Google-Attributes: gid103376,public From: "Paul Whittington" Subject: Warning: Flame Bait Date: 1996/11/27 Message-ID: <01bbdcb5$7500ab30$24af1486@pc-phw> X-Deja-AN: 201120064 organization: Idaho National Engineering Laboratory newsgroups: comp.lang.ada Date: 1996-11-27T00:00:00+00:00 List-Id: To: Editor of Object Magazine In your December 1996 issue of Object Magazine you published an article, "Why Java is a Key Technology for the Intranet", that perpetuates a dangerous common misunderstanding and shows an apparent lack of awareness on your part. Lets begin with the title, "Why Java is a Key Technology for the Intranet". Java is not a key technology for the Intranet, or the Internet for that matter! The key technology here is the JVM and its associated standard libraries, of which there is no mention in the article. Java is just another upstart non-standard ill-defined mutating computer language that promises to waste countless hours of precious software developer time, as we try to keep up with its inevitable changes, and provide the marketing machines with yet another banner to wave proclaiming a new generation of silver bullet products. No mention is made of the fact that it is entirely possible to implement JVM compilers for any number of computer programming languages. The fact of the matter is that JVM compiler implementation for languages other than Java has already begun, and products based on some of these compilers are already publicly available. As a case in point consider the "ObjectAda for Windows: Professional Edition" product from Aonix, one of the largest companies in the object-oriented tools market (http://www.aonix.com). Along with a state-of-the-art native WIN32 Wintel compiler for Ada 95, the world's first ISO and ANSI standardized fully object-oriented computer language, the product includes a JVM targeting capability. There is also an effort underway to produce a Free Software Foundation GNU Ada 95 JVM compiler based on the current FSF GNU GNAT Ada 95 compiler available for a wide variety of platforms. In the article you pose the question "Why Bring Java Into the Enterprise Shop?" Why indeed? In your response you imply that Java is responsible for the important JVM features of portability, scalability, and multithreading. This is of course not true! These are characteristics of the JVM, not Java! The fact of the matter is that Ada is more portable, more scalable, and has a far more complete, tested and mature multithreading model than Java, including complete thread-safe programming support with full guarding capabilities. In fact, during the thirteen year history of Ada not only has the language matured into a complete robust general purpose object-oriented programming language, but the Ada market now provides compilers and tools that are as good as or better than those of the C++/Java market, including training and support. In fact its interesting to note that the unstable C++ and Java languages seem to be slowly but surely migrating towards being a semantic replica of Ada 95. Consider the following semantic comparison chart available at http://www.adahome.com: A minimal comparison of Java with C++ and Ada 95 Language Feature Java C++ Ada 95 ---------------- ---- --- ------ Inheritance Single w/ Multiple Single w/ multiple multiple subtyping) features Preprocessor No Yes No Separate No Yes Yes Interface/Implementation Garbage Collection Yes No Yes Operator Overloading No Yes Yes Pointer Arithmetic No Yes No Parameterized Types No Yes Yes (Templates) (Generics) Exceptions Yes Yes Yes Multi-Threading Yes No Yes Studying this chart carefully makes me think that either Sun designed Java by starting with Ada 95, known to support good software engineering characteristics, and modifying its syntax to be similar to C++ for marketing reasons, or they started with C++, for marketing reasons, and modified it to support good software engineering characteristics. In either case I'm left with the question, "Why did Sun spend, and continue to spend, their R&D dollars designing and developing a language that, through the investment of millions of United States taxpayer dollars, including Sun's, had already been designed, developed, tested, matured and fielded over the course of a decade or so?" Also in the article you pose the question "How many other application-development systems can give you these advantages [ORB bindings, support for workstation class platforms, and the desktop] from a single code base?" Well Ada 95 can do all of this, as well as provide support for native code generation on many platforms including the JVM, bindings to native sub-systems such as X-Windows, WIN32, ODBC etc., and access to several extensive source code reuse libraries, none of which Java can do. In addition to all of this, research has shown that both initial development and maintenance costs for Ada can be as little as half that of C, and by induction less than that of C++ and Java. In my seventeen years of programming I've used many languages, including various assemblers, APL, C, C++, Java, Pascal, Modula-2, FORTH, and Ada, and I've yet to find a better language than Ada for its domain. I'm not a fan of big government, nor do I think that, in general, the federal government does things very well, but in the case of Ada I've found an exception, and it really gets my goat that we've spent millions of taxpayer dollars to develop an excellent technology that is being thrown out with the bath water. Its time for US companies to start making software development decisions based on business case analysis, and stop making them based on the opinion of some geek developer who thinks that the latest silver bullet written up in some industry rag is the right way to do things. To managers I say, show a little intestinal fortitude, get informed about the real costs and payoffs of competing software development technologies, make business decisions like you're supposed to, and tell your coddled guru to take a hike if "it doesn't work for him man!" To software developers I say, grow up, start acting like the engineering professionals you say you are, keep yourself and your managers informed, and stop believing the silver bullet garbage already! Thanks for the soap box! TTFN Paul Paul Whittington