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=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,f7d0a9ce9dcd73f8,start X-Google-Attributes: gid103376,public From: Chris.Morgan@BAESEMA.CO.UK Subject: Ada Anti-News!! Date: 1996/05/21 Message-ID: <009A2AACB8BFDAEF.3E59@smcsr3.smcs.se.baesema.co.uk> X-Deja-AN: 155938255 sender: Ada programming language comments: Gated by NETNEWS@AUVM.AMERICAN.EDU x-vms-to: SMTP%"INFO-ADA@LISTSERV.NODAK.EDU" newsgroups: comp.lang.ada Date: 1996-05-21T00:00:00+00:00 List-Id: Some of you may have read the Emacs anti-news which is provided in the manual for people who experience time backwards. Inspired by this, we now proudly present : Ada Anti-News Firstly Ada is now smaller. It is very important to have the Reference Manual in a slim handy volume, so we have removed all the Appendices and replaced some descriptive stuff with more concise jargon. As a result, you no longer need worry about FORTRAN, COBOL or C - they are irrelevant now as Ada is the One True Way for software engineering - no other languages are needed. As the Internet is now shutting down somewhat, you will no longer find any copies of the Rationale except occasionally in a few bookshops, as a result anyone who understands much about Ada tasking will be a guru on your project. Naturally this will be backed up with reduced access to Ada information via mailing lists and WWW sites. To give you more time to drink coffee and read the news, compilations will now take a REALLY LONG TIME. They will take so much CPU that access to the machine which runs the compiler will be by batch queue only. For big projects we expect machines to start costing hundreds of thousands or even millions of pounds and require a controlled environment, so naturally you will be able to ditch your mouse-driven workstation (now useless) and free up desk space with a simple VT terminal. Compiler prices should rocket as well. Optimisers will still be present in most compilers (with less features), but now they will sometimes make your program fail depending on which optimisations you choose. We leave as exercise to find out which ones. Optimisation will also take a REALLY LONG TIME. Whilst uppping the CPU requirements we have made many other improvements. Firstly programs are now hidden away when compiled into "libraries" which have a hidden structure - you will have to use special tools and supporting files to access these libraries and loading them into memory will take a REALLY LONG TIME as they contain lots of information (don't ask). This should make you feel more professional than those C folks. Of course the side efect of this CPU enhancement is that home machines will no longer be able to cope, so most affordable or free Ada compilers have now been withdrawn. This should enhance the number of hours you are able to spend in the office accessing the big computers. Another way in which we have improved Ada is in the area of compilation order and recompilation costs : in future you will gain a sense of achievement merely by getting your program to compile, bind and link. On large projects you will find yourself asking to be allowed to change a package spec in a large executable only to be told that the recompilation costs make that impossible within the timescales, due to the new recompilation requirements. This new feature will force you to recompile even packages that aren't really affected, and often you will not understand why. This will enhance your appreciation of strict top-down design so you get your code right the first time, and remove any desire to indulge in rapid prototyping or incremental development. When you are allowed to compile your package, you will probably take two or three attempts to get all the last dependencies recompiled. This should allow you to do a couple of chores or even eat lunch before your build completes. Naturally there will be a tool which could do all this for you, but as that will take much longer again than working it out by hand, you will probably reserve that for extra long lunch-hours or intense Snake sessions (Snake is the best game the new compiler hosts will support). Another point we addressed whilst improving compilers was error messages. In order to emphasize how great the new LRM is, we now recommend that all error messages simply refer to the relevant section rather than foolishly trying to explain the error itself. Some of you will be able to spend a lot of time helping your colleagues simply to understand these references, and as a result will probably have a chat and yet another cup of coffee. To allow some mystery to remain, some sections of the LRM will never ever make any sense to you. Of course, we haven't just focussed on compiler-specific issues, as we know that there are many, many areas for improvement in the language itself : To remove the complexities of using X-Windows or MS-Windows in your work, we have now abolished the access to sub-routine type - you will not be able to handle callbacks directly in your Ada, so they will become Someone Elses Problem. Object-Oriented Programming has been dropped. Procedural programming will make your job appear harder to others (because it will be). You will have to give less thought to reuse and more to straight coding. Tasking has been slimmed down, so you should be able to implement a lot more deadlocks and/or race conditions in your multi-threaded applications - they are character-building and good for the soul. It is hoped that compiler vendors will take this opportunity to build non-portable extensions to support real-time constructs in differing non-standard ways - these used to be quite boring when they were all standard. Similarly, we expect a nice spread of different standard Maths packages to appear. To keep you on your toes, we have introduced an unpredictable exception called NUMERIC_ERROR which you will never be able to fully predict in your exception handling code. Sometimes you will implement an exception handler for this exception and find that CONSTRAINT_ERROR has been raised instead, and sometimes the opposite will happen. Now that Ada has become so specialised and unlike other languages, you will probably find that it is only used on Defence projects and other enormous embedded ones where the contractor can afford the investment in equipment and staff needed with this new standard. This will remove all those non-serious uses such as games, research and instructional use, so you will no longer have worry about what anyone else does in any other languages. Finally we have sprinkled some small rule changes throughout the body of the language. These generally increase the number of special cases and non-intuitive features which should substantially increase your overtime claims in hectic months. Have Fun! :-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-) Chris Morgan chris.morgan@baesema.co.uk Disclaimer : Just Kidding!!!