<<

ADA Volume 23 USER Number 1 JOURNAL March 2002

Contents page Editorial Policy for Ada User Journal 2 Editorial 3 News 5 Conference Calendar 44 Forthcoming Events 51 Ada UK 2002 Sponsors 64 Ada-Europe Associate Members (National Ada Organizations) Inside Back Cover

Ada User Journal Volume 23, Number 1, March 2002 2 Editorial Policy for Ada User Journal

Publication Original Papers Commentaries Ada User Journal – The Journal for the Manuscripts should be submitted in We publish commentaries on Ada and international Ada Community – is accordance with the submission engineering topics. These published by Ada-Europe. It appears guidelines (below). may represent the views either of four times a year, on the last days of individuals or of organisations. Such March, June, September and All original technical contributions are articles can be of any length – December. Copy date is the first of the submitted to refereeing by at least two inclusion is at the discretion of the month of publication. people. Names of referees will be kept Editor. confidential, but their comments will Opinions expressed within the Ada Aims be relayed to the authors at the discretion of the Editor. User Journal do not necessarily Ada User Journal aims to inform represent the views of the Editor, Ada- readers of developments in the Ada The first named author will receive a Europe or its directors. programming language and its use, complimentary copy of the issue of the general Ada-related software Journal in their paper appears. Announcements and Reports engineering issues and Ada-related We are happy to publicise and report activities in Europe and other parts of By submitting a manuscript, authors grant Ada-Europe an unlimited licence on events that may be of interest to our the world. The language of the journal readers. is English. to publish (and, if appropriate, republish) it, if and when the article is Although the title of the Journal refers accepted for publication. We do not Reviews to the Ada language, any related topics require that authors assign copyright to Inclusion of any review in the Journal are welcome. In particular papers in the Journal. is at the discretion of the Editor. any of the areas related to reliable Unless the authors state explicitly A reviewer will be selected by the software technologies. otherwise, submission of an article is Editor to review any book or other The Journal publishes the following taken to imply that it represents publication sent to us. We are also types of material: original, unpublished work, not under prepared to print reviews submitted consideration for publication from elsewhere at the discretion of the • Refereed original articles on elsewhere. Editor. technical matters concerning Ada and related topics. News and Product Announcements Submission Guidelines • News and miscellany of interest to Ada User Journal is one of the ways in All material for publication should be the Ada community. which people find out what is going on sent to the editor. Electronic in the Ada community. Since not all of submission is preferred – typed • Reprints of articles published our readers have access to resources manuscripts will only be accepted by elsewhere that deserve a wider such as the World Wide Web and the Editor by prior arrangement. audience. Usenet, or have enough time to search Prospective authors are encouraged to through the information that can be contact the Editor by email to • Commentaries on matters relating found in those resources, we reprint or determine the best format for to Ada and software engineering. report on items that may be of interest submission. Contact details can be to them. • Announcements and reports of found near the front of each edition. conferences and workshops. Reprinted Articles Example papers conforming to • Reviews of publications in the While original material is our first formatting requirements as well as field of software engineering. priority, we are willing to reprint (with some word processor templates are the permission of the copyright holder) available from the editor, or at: • Announcements regarding material previously submitted www.adauk.org.uk standards concerning Ada. elsewhere if it is appropriate to give it There is no limitation on the length of a wider audience. This includes papers papers, though a paper longer than Further details on our approach to 10,000 words would be regarded as these are given below. published in North America that are not easily available in Europe. exceptional.

We have a reciprocal approach in granting permission for other publications to reprint papers originally published in Ada User Journal.

Volume 23, Number 1, March 2002 Ada User Journal 3 Editorial

This issue is dominated by a news section containing many important announcements and discussions. From Ada tools, Ada resources through to Ada publications, many interesting news postings have been summarised by the News Editor, Dirk Craeynest. The Forthcoming Events section contains details of the forthcoming Ada-Europe 2002 conference. Invited speakers include Maarten Boasson, Alois Ferscha, Rachid Guerraoui and Mehdi Jazayeri. Tutorial sessions are prominent in the conference, including sessions on software design and patterns in Ada, SPARK Ada, software testing and metrics. The section also includes calls for papers for the Ada UK / Embedded Systems Club Autumn Conference and the SIGAda 2002 conference. Finally, I draw your attention to the change in the production of Ada User Journal. From this issue onwards, the Journal is being produced wholly by Ada-Europe. Apart from obvious changes to the cover, contacts and Editorial Policy, the impact to the production and contents of the Journal will be minimal.

Neil Audsley York March 2002 Email: [email protected]

Ada User Journal Volume 23, Number 1, March 2002 5 News Dirk Craeynest () Offis nv/sa and K U Leuven. Email [email protected]

Organization: The MITRE Corporation Hampton, VA. This data center is a Contents Subject: DC SIGAda Presentation on scientific digital library that is currently page Thursday 10 Jan 2002 processing, archiving, and distributing Ada-related Events 5 To: [email protected] about 3 TB/month of data from two Ada Semantic Interface instruments on the NASA Terra Specification (ASIS) 7 [...] Thursday, 10 January 2002, 7:30 P.M. (Refreshments and Social at 7:00 Spacecraft, in addition to archiving and Ada and Education 7 distributing data from many other data Ada-related Resources 8 P.M.) at the Lockheed Martin Corporation in Rockville, Maryland. DC sources. Dr. Barkstrom has been actively Ada-related Tools 9 engaged in work on NASA's Earth Ada-related Products 19 SIGAda and Baltimore SIGAda will feature a presentation titled: Observing System's Data and Information Ada and Linux 28 System (EOSDIS) over the last decade, Ada and Microsoft 28 Ada 95 Bindings for the Hierarchical receiving a NASA Exceptional References to Publications 30 Data Format (HDF) Used for NASA's Achievement Medal for his contributions Java 33 Earth Observing System (EOS) Data and to the system architecture and cost Ada Inside 34 Information System (EOSDIS) modeling for this system. [...] Ada in Context 38 This presentation describes Ada95 Jeff Castellow, Chair, DC SIGAda bindings for HDF4 and HDF5, the Ada-related Events current versions of the National Feb 12 - Baltimore SIGAda Computational Sciences Alliance Meeting on Fun with Ada [To give an idea about the many Ada- (NCSA) Hierarchical Data Format related events organized by local groups, (HDF). These self-describing From: "Kester, Rush W." some announcements are included here. formats are intended for storage of large, If you are organizing such an event feel diverse collections of scientific data and Date: Wed, 23 Jan 2002 13:02:08 -0500 free to inform us as soon as possible, or if for retrieving subsets of these data. The Subject: Balt/DC ACM chapters Working you attended one please consider writing libraries also support data compression, with Laurel On-Line a small report for the Ada User Journal. -- chunking of large arrays, and automatic To: [email protected] dc] conversion of vendor-specific binary formats for a variety of data types. My name is Rush Kester, I'm a Software Systems Engineer at Johns Hopkins Dec 4 - Journée Ada-France HDF files are intended to provide self Applied Physics Lab in Laurel. I have documenting storage of scientific data. From: Lionel Draghi spoken to most SIGAda 2000 attendees This means that HDF provides structures and many Team-Ada members in the past that allow the file format to contain data Date: Sat, 24 Nov 2001 14:22:13 +0100 about a project to work with area High about the file structure and descriptive School students, sponsored by the Balt Subject: [Annonce] Journée Ada-France information about the data contained in Newsgroups: fr.comp.lang.ada and DC Chapters of Association of the file. By reading an appropriate Computing Machinery's Special Interest [Extracts translated from French: -- dc] sequence of data structures in the file, a Group on Ada (ACM SIGAda). data user can extract the information You are cordially invited to the "Journée needed to understand the kind of data in The project uses fun/affordable stuff like Ada-France" which will take place on the file, the size, shape, and data type of LEGO Mindstorms robots, model trains, Tuesday December 4th at the université the arrays in the file, and even games, RC cars, etc. to get students Paris VI. documentation about the file contents. interested in Software Engineering in [Program:] particular "Real-Time Software HDF is becoming widely used in Engineering." See our website at: - "Le point sur Ada 0Y", by J.P. Rosen scientific data holdings, such as those of http://www.adapower.com/lab/ - "Ada-Europe'2003 in Toulouse", by A. NASA's Earth Observing System (EOS) adafun.html Canals Data and Information System - EOSDIS. We are planning a special joint meeting - "Le DLIP", by L. Draghi At present, EOSDIS is adding about one TB per day to NASA's Earth Science data of the Baltimore Chapter of ACM - "PolyORB", by L. Pautet holdings. In the near future, this rate will SIGAda on Feb. 12 which will feature a - Results and prize winners of the increase to about three TB per day. The number of short presentations from programming contest, by L. Draghi EOS Project has directed NASA various individuals who are doing fun - General Assembly of the Ada-France Principal Investigators to use HDF for the and interesting stuff Software organization data format for all EOS missions. Thus, Engineering things with computer software most written by members of http://www.Ada-France.org/ this data format is very important to the author (he is Instrument Principal ACM members. Jan 10 - DC SIGAda Investigator for the investigation of If you are interested or would like Clouds and the Earths Radiant Energy additional information, please contact me Presentation on Ada 95 System: CERES), as well as many of his at [email protected] or Bindings for HDF colleagues. [email protected]. Dr. Bruce R. Barkstrom is currently Head From: Currie Colket Rush Kester, Pres. Balt SIGAda, of the Atmospheric Sciences Data Center Date: Thu, 3 Jan 2002 17:58:46 -0500 Software Systems Engineer, AdaSoft at at NASA's Langley Research Center in

Ada User Journal Volume 23, Number 1, March 2002 6 News – Ada-related Events

Johns Hopkins Applied Physics Lab, From: "Hubert B. Keller" Mar 14 - Joint Ada UK / 11100 Johns Hopkins Road, Laurel, MD 20723-6099, voice 240-228-3030, fax Date: Tue, 19 Feb 2002 13:57:25 +0100 Embedded Systems Club 240-228-6779, Subject: Ada Deutschland Tagung, 6. - 8. Conference http://hometown.aol.com/rwkester/ März 2002, Jena myhomepage/ To: "Ada, Liste" JohnRobinsonAndAssociates.com> Feb 20 - Ada-Belgium Hosts Date: Mon, 18 Feb 2002 14:04:24 +0000 [Extracts translated from German: -- dc] Organization: John Robinson & Associates Aonix Technology Update Call for Participation, GI FG 2.1.5 Subject: ANN: Ada UK Technology Update conference & exhibition From: Dirk Craeynest Ada Deutschland Tagung 2002 6-8 Newsgroups: comp.lang.ada March 2002 Friedrich-Schiller- Date: Thu, 7 Feb 2002 23:17:04 +0100 Universität, Jena The Ada UK User Group are pleased to announce a joint Ada UK/Embedded (MET) http://www.ada-deutschland.de/ Subject: Ada-Belgium - "Aonix Technology Systems Club conference to be held on Update" - Wed 2002-02-20 20:00 Organizers: Ada-Deutschland / March 14th 2002 in Swindon, UK. Fachgruppe 2.1.5 Ada der Gesellschaft To: [email protected] Attendance for members will cost 50 für Informatik; Förderverein Ada GBP (82 Euro). Ada-Belgium Special Evening Event: Deutschland e.V. Aonix Technology Update A full programme and registration forms Program [extracts]: http://www.cs.kuleuven.ac.be/~dirk/ada- can be found on the following web sites: belgium/events/local.html Wednesday, March 6, 2002 http://www.AdaUK.org.uk; http://www.EmbeddedSystemsClub.com Ada-Belgium is pleased to announce a - A. Schürr: Object-oriented technical presentation by Pierre Morere Development of Embedded (Real- Papers with Ada content include: Time) Systems with UML of Aonix France, on Wednesday, - Does Software Engineering Have a February 20, 2002, 20:00 at the U.L.B., - F. Thom: Conformity! A Practical Future? - Raven in Space Department of Computer Science, [...], Integration of Standards: A Case for - Conformity! A Practical Integration of Brussels (after the Ada-Belgium 2002 using the Unified Modelling Language Standards: A case for using UML General Assembly at 19:00) [...] (UML) with the Ada Programming with Ada 83 & Ada 95 Overview "Aonix Technology Update" Language - Have the Cake & Eat it Too: A State-of- - Tools Session: ARTiSAN - Aonix Policy (20 min): Product the-art GNU IDE for Ada 95 evolution - Tools Session: Polyspace - Designing for Testability: Testing an - VectorCast (20 min): Test tool for Ada - Meeting of the members of Ada "Stack" Class Förderverein Ada Deutschland e.V. - AdaNav (20 min): Generality about - SPARK - What Does the 'R' Stand For? ASIS; An Ada Tool based on ASIS: Thursday, March 7, 2002 Call Tree & Profiling - Real Time Operating Systems for use in - F. Huber: Model-based Software Safety Critical Systems - Q&A Engineering and Ada: Synergies for the - Developing High Integrity Systems Design of Safety Critical Systems More information with VxWorks and ACT GNAT Ada - K. Wachsmuth: UML Design Samples - Aonix products: http://www.aonix.com/ - Helping You to Deliver Ada for Safety Critical Systems content/products.html Applications to Your Customer's - VectorCast: - Tools Session: Aonix Requirements and Quality Standards http://www.vectorcast.com/vcada.pdf - S. Montenegro: BOSS/Ada: An Open The keynote presentation, given by - ASIS: http://www.acm.org/sigada/ Source Ada 95 Safety Kit Kevlin Henney of Curbralan, will pose wg/asiswg/asiswg.html - A Dependable Open Source Embedded the question: Dirk Craeynest, Vice-President Ada- for Ada/GNAT - "Are Agile Methods Applicable to Belgium - Tools Session: ACT Embedded Systems?". Mar 6-8 - Ada Germany - Tools Session: Rational Other papers include: Conference 2002 - Panel Discussion: E. Plödereder, J. - Proposed HOOD to UML Migration Winkler, H. Keller: Development of Process From: Carsten Freining Reliable Software in the 21st Century - HOOD and UML: You Can Use Both! (Ada and Design Patterns, Frameworks, - Managing Safety Requirements: A Use SW from Components, UML, Code Date: Fri, 08 Feb 2002 16:21:22 +0100 Case Driven Approach Organization: Friedrich-Schiller-University Generation, IEC 61508, ...) - Modern RTOS Architecture: Meeting Jena, Germany - Meeting of Fachgruppe GI-FG 2.1.5 Today's Demands Subject: Ada Germany Conference 2002 Ada Newsgroups: comp.lang.ada - Dynamic Storage Allocation with ++ Friday morning, March 8, 2002 Call for Participation - Ada Germany in Embedded Systems - E.Plödereder: Code Analysis Conference 2002 - Right on Target: Target Testing Past, Friedrich Schiller University, Jena, - J. Winkler: A Comparison of the Present & Future Program Provers FPP, NPPV and Germany, March 6.-8. 2002 - Putting Design Patterns to Use in a SPARK For further details please visit: Real-Time, Embedded Design - R. Siara: Ada meets Algebra http://psc.informatik.uni-jena.de/ - UML 2.0 - The Next Step in the Themen/Ada-DE-2002-engl.pdf - Closing Session and Best Paper Embedded Development Mega-Trend? Presentation Awards

Volume 23, Number 1, March 2002 Ada User Journal News – Ada-related Events 7

For full details of the 18 papers and two number of queries doing more work Examples of Ada Software panel sessions, either visit the websites or (just because Ada95 is bigger, then contact the Club & Event Manager Hazel Ada83). using OO-features Lawton at mailto:[email protected]. Of course, a lot depends on the tool and From: Pascal Obry John Robinson, Conference Director on the style the tool is coded, but I'm Date: Mon, 7 Jan 2002 21:03:33 +0100 almost sure, that you'll get lots and lots of Subject: Re: [Ada-Comment] OT: Request International Events small situations where you can not just for articles for the AdaIC site. map ASIS83-based code onto ASIS95, To: "Ada-Comment List" and you will have to recode. Anyway - [email protected]> Date: Mon, 4 Feb 2002 08:01:11 -0500 good luck :-)) > [...] a few students of mine have been Subject: ASISWG and Conferences seaching the net for Ada Software that reminder uses tagged types, i.e. the OO-features To: [email protected] Ada and Education of Ada and haven't been very [See also elsewhere in this AUJ issue. -- successful. Any pointers that you dc] IO and Token Processing might have ? Don't forget about our upcoming Ada- Demonstration Code [...] There is plenty of them, your related conferences [including – dc]: From: [email protected] (Lutz students certainly did not look very hard o Ada-Europe'2002 -- 7th International Donnerhacke) :) Look for XmlAda, GtkAda, AWS, Conference on Reliable Software Date: Fri, 23 Nov 2001 16:45:15 +0000 POV-Ada, AUnit... just to name a few :) Technologies: Vienna, Austria, 17-21 (UTC) Pascal Obry, Team-Ada Member, 45, rue June 2002 http://www.ada- Organization: IKS GmbH Jena Gabriel Peri, 78114 Magny Les europe.org/conference2002.html Subject: [Ada95] Small demonstration code Hameaux, France, o SIGAda 2002 -- Houston, Texas, USA for Text_IO and simple Token http://perso.wanadoo.fr/pascal.obry 8-12 December 2002 -- processing From: "Randy Brukardt" http://www.acm.org/sigada/conf/ Newsgroups: sigada2002 de.comp.lang.misc,comp.lang.ada Date: Mon, 7 Jan 2002 15:14:32 -0600 [...] First a simple recursive collector: Subject: Re: [Ada-Comment] OT: Request http://www.iks-jena.de/mitarb/ for articles for the AdaIC site. Clyde Roby, (ASISWG/ASISRG) lutz/ada/reverse_line_tokens__adb.htm To: "'Ada-Comment List'" Ada Semantic Interface overcoming the storage problems of the Well, there are two programs on the net Specification (ASIS) former one: http://www.iks-jena.de/ that I'm responsible for: mitarb/lutz/ada/shuffle_text_tokens__adb The Claw Introductory Edition is O-O .htm Transitioning an ASIS code using tagged types The first file was generated in order to (http://www.rrsoftware.com/html/prodinf Application from Ada 83 to instruct a colleague in Ada programming. /claw/clawintro.html). Ada 95 The versions envolved over two hours Also, the ARM formatting program uses (adding features like random shuffling tagged types to provide different output From: "Sergey I. Rybin" and full text processing) teaching. A final formats (no inheritance, though) test with a larger file shut down the (http://www.ada-auth.org/arm.html). [...] Date: Tue, 11 Dec 2001 23:29:22 +0300 whole system with memory shortage. Subject: Re: ASIS 1.2 & 2.0 Some instructive (algorithm discussing) To: [email protected] Tutorials and debugging results in the final iterative Documentation in French > Trying to port legacy tools from ASIS version. 1.2 / Ada 83 to ASIS 2.0 / Ada 95. From: Zaffalon Luigi Any major gotchas to watch out for? Course: Developing I would recommend you to have a look Software that Matters Date: Wed, 16 Jan 2002 17:11:39 +0100 into the paper "Transitioning an ASIS Subject: Re: Support de formation à Emacs- From: Franco Gasperoni presented by Joseph Wisniewski at To: [email protected] Date: Fri, 4 Jan 2002 15:34:10 +0100 SIGAda'99 conference. The paper To: [email protected] [In response to a request for French describes the kind of experience you are documention on Ada tools: -- dc] going to get :) [Extracts translated from French: -- dc] C'est un peu contextuel, mais si cela peut [Available online at We are putting (technical) documents vous aider: http://www.acm.org/sigada/conf/sigada99 explaining "why Ada" on our libre.act- http://eig.unige.ch/lii/LII_Ada95.htm [...] /proceedings/p53-wisniewski.pdf. -- dc] europe.fr site. There are in particular transparencies of the course I teach at the Luigi Zaffalon, Laboratoire I myself (as ACT ASIS consultant) was ENST "Building Software that Matters". d'informatique industrielle, Ecole in some extend involved in the ASIS83 - d'ingénieurs de Genève HES-SO, 4, rue > ASIS95 transition described by Joseph, I am currently working on it (title of the de la Prairie, 1202 Genève, Suisse, and I may say, that such a transition is a lecture: "Programming in the Small: Voice: +41 22 338 0 552, E-mail: challenge. Conceptually ASIS83 and Common C/C++/Java Pitfalls & How [email protected], ASIS95 are very similar, but Ada 83 and Ada Avoids them"). [...] http://eig.unige.ch/lii Ada 95 are different languages, so first of [URL: http://libre.act-europe.fr/ [The libre.act-europe.fr site mentioned all you have different Element Software_Matters/ -- dc] classification hierarchies. Then, you have above contains an Ada Course in French different sets of structural and semantic Franco Gasperoni, ACT Europe, 8 rue de as well. URL: http://libre.act-europe.fr/ Element queries - in ASIS95 you have Milan, 75009 Paris, France, tel: +33 1 49 french_courses/ -- dc] 70 67 16, fax: +33 1 49 70 05 52

Ada User Journal Volume 23, Number 1, March 2002 8 News – Ada and Education

The AdaIC Web site has been revamped. implementation), but that is not an Ada Training Some of you might have tried our Beta absolute requirement. (It would be hard version, which had some browser to say anything useful about making [This information is included as examples compatability problems. As far as I Applets, for instance, without referring to of public Ada training courses: many are know, they've been corrected. If you run a particular implementation.) being organized regularly. For more, see into any further problems, please let me also pointers in several previous AUJ Randy Brukardt, co-webmaster, AdaIC, know. And, of course, I always welcome issues. -- dc] [email protected] suggestions for improvement. From: John Robinson Ada Jobs Web Pages Ann Brandon, Communications Director, Date: Wed, 9 Jan 2002 12:27:18 +0000 From: "Kester, Rush W." Ada Resource Association, Onyons, Inc., Organization: John Robinson & Associates P.O. Box 294, Randolph Center, VT Subject: ADV: Ada Training Course, UK, Date: Tue, 4 Dec 2001 10:30:00 -0500 05061, USA, (802) 728-9947 25th February to 1st March Subject: Re: Future with Ada Newsgroups: comp.lang.ada To: [email protected] John Robinson And Associates Ltd will Request for Articles for the AdaIC Site Ann Brandon said [about the AdaIC job be running a public Ada Programming web page at http://www.adaic.com/jobs/ Course in the week beginning 25th jobs.html -- dc]: February. The course will have an Ada From: Randy Brukardt 83 and an Ada 95 stream. [...] > I like keeping the jobs up for more than Date: Mon, 3 Dec 2001 17:38:52 -0600 a few months just to give people a From: Ed Colbert Subject: Request for articles for the AdaIC sense of what the "climate" is: where Organization: Absolute Software Co., Inc. site people are hiring, any patterns, etc. [...] Subject: [Announcing] Public Ada 95 & 83 To: [email protected] Classes During Weeks of 25 February & Randy Brukardt wrote: We're looking to beef up the technical March 2002 in Carlsbad CA > To expand on Ann's reply. I overviews/articles of Ada on the AdaIC To: [email protected] occasionally see job postings here [the web site. We'd like to bridge the gap Team-Ada mailing list] and on CLA [Extracted from postings on Wed, 16 Jan between experience reports ("Ada at [the comp.lang.ada newsgroup] that 2002 and Wed, 23 Jan 2002. -- dc] Work") and the heavy technical material aren't also forwarded to (like the Ada Reference Manual). We Absolute Software will be holding a [email protected]. Should we have a few pages like this (some of which public Ada 95 class on the week of 25 spend time trying to get permission are pretty old), but we'd like to find more. February 2002, and a public Ada 83 class from the poster to add it to the AdaIC on the week of 25 March 2002, [both] in The purpose of the AdaIC web site is to jobs board? And why wouldn't Carlsbad, CA. You can find a full provide a place to find positive someone post them there anyway - it description and registration form on our information about Ada, in order to gets thousands of views every month - web-site, www.abssw.com. Click the encourage both new and existing users of potentially reaching more people than Public Courses button in the left margin. Ada. Team-Ada, for instance. [...] (We also offer classes on object-oriented methods and other object-oriented Some of the topics that I'd like to have IMO, it is more important to languages.) [...] more articles on include: communicate that there is Ada work and - An overall overview of Ada. (We have where it is. Those who post job an overview of the Ada 95 features, announcements elsewhere are in many Ada-related Resources but we really need an overview of the cases simply ignorant of the specialized language as a whole.) Ada job sites. Had they known, they may Web Site for Libre Software very well have posted at Ada IC or - Comparative pieces (and experience): GWU's (for ACM SIGAda) Ada job sites Developers Ada vs. C; Ada vs. C++; Ada vs. [URL for the latter: Java. From: Arnaud Charlet http://www.seas.gwu.edu/~adajobs/ -- - Overviews of using Ada in a Java dc]. Date: Fri, 23 Nov 2001 18:26:55 +0100 environment (Applets, other apps, It's a matter of advertising. Monster, Subject: Re: Gtkada-Prob either using JGNAT or AdaMagic). HotJobs, etc. spend much more time and Newsgroups: comp.lang.ada - And anything else that someone money advertising their presence than [...] I'd also recommend looking at all the interested in using Ada (and coming does the Ada community. Please don't let good stuff available from http://libre.act- from another language) might like to criticizm or concern for whether the europe.fr, including several software know. original poster "would have" stop you. I wouldn't waste my time even checking. packages (Ada Web Server, GVD, We're interested both in articles that we The job poster wants their job filled. GtkAda, XMLAda, etc...) and where we can post on the AdaIC, and links that we They don't care how the job seeker finds regularly add new sections, like the can make to other web sites. Please out. students & teachers corner that will nominate articles/links by sending them include Ada materials like courses. and a brief description to us at My vote, Ann and Randy, is to keep up [email protected]. [...] the good work. I would like to see others when they see Ada jobs posted on other New Ada Information Articles ought to be available in forums or by other means to post them on Clearinghouse Web Site electronic form, and should be available Team-Ada, the Ada IC, AND the GWU for free access. You can nominate articles Launched Job site. THEY SHOULD BE you've written, or those that you like. BROADCAST ON ALL AVAILABLE (Feel free to nominate articles found on From: "Ann S. Brandon" CHANNELS!!!! In this way people will the AdaIC archive site, too; it will help us know what the true Ada job market is Date: Mon, 03 Dec 2001 16:14:28 -0500 determine what to work on.) We'd prefer Subject: New AdaIC Website Launched that articles be generic (that is, not Newsgroups: comp.lang.ada specific to any particular product or

Volume 23, Number 1, March 2002 Ada User Journal News – Ada-related Resources 9 like, not just the subset they see/hear to the list: [See also same topic in AUJ 20.3 about through typical channels. http://www.adaic.org/learn/training.html (October 1999), p.178. -- dc] [See also "ACM SIGAda Job Registry" in 3) Several new companies have been AUJ 22.1 (March 2001), pp.7-8, and added to the Ada Recruiters page: SAL - Stephe's Ada Library "Ada Jobs Web Pages" in AUJ 21.2 (July Alexander Mann, BAE Systems, Elite From: Stephen Leake 2000), pp.97-98. At URL Placement Services, Inc., Sysdyne http://www.cs.kuleuven.ac.be/~dirk/ada- Corporation. Date: 11 Dec 2001 13:43:53 -0500 belgium/jobs/ Ada-Belgium maintains http://www.adaic.org/jobs/recruit.html Organization: NASA Goddard Space Flight web-pages with Ada-related job offers for 4) Several additions have been made to Center Belgium. -- dc] the "news" and "learn Ada" pages and Subject: SAL 1.3 released menus: (a) Absolute Software's March Newsgroups: comp.lang.ada What's New on the AdaIC and February public courses in Advanced This release of SAL does three things: Web Site Ada83 & Ada95, respectively; (b) AdaGIDE (GNAT Integrated (1) It fixes the missing Endianness From: Randy Brukardt Development Environment) for Windows package (now properly named 95/NT new release; (c) Several technical SAL.Endianness). Date: Tue, 4 Dec 2001 16:03:35 -0600 Ada articles for which we've received (2) It adds my quaternion library; Subject: Re: AdaIC Website revamped requests; those that fall under "Ada vs. actually, a complete Cartesian math To: [email protected] C/C++" we've summarized; (d) David A. library for representing positions, [On the suggestion to create an AdaIC Wheeler's Lovelace Tutorial. rotations, and masses in Cartesian space announcement email list for visitors who http://www.adaic.org/news/index.html; (yes, I am a physics nerd :). want to keep informed of updates to the http://www.adaic.org/learn/index.html (3) Provides some missing tests and other AdaIC site. -- dc] 5) A general overview of Ada95 is now minor clean up. We'll consider the mailing list idea. In available. http://www.adaic.org/ I followed my release process rigorously the mean time, however, the site has a standards/articles/95overvw.html this time, so there are no hidden "What's New" page (recently restored to 6) We've reorganized the menu and have compilation problems (with GNAT). So the site; the old site had one); it's easy to changed the name of "Classes and if you've downloaded SAL 1.2, please go find (just click on the "What's New" Conferences" to "Learning Ada," which back and get 1.3. button on the home page). It's a little we moved to a more left-hand position on short at the moment (we didn't keep track the menu bar. Not only have we added http://users.erols.com/leakstan/Stephe/ of changes during the redesign phase, and the above items -- Trainers, Technical Ada/sal.html there were many), but it will grow Articles, and Overview -- to "Learning [See also same topic in AUJ 22.4 quickly. Ada," we've also moved some General (December 2001), p.198. -- dc] From: Randy Brukardt Information items, such as the FAQs, under "Learning" from "Why Ada." Booch Components - A Case Date: Mon, 17 Dec 2001 22:46:04 -0600 http://www.adaic.org/learn/index.html Study Subject: AdaIC News introduced To: [email protected] Ada-related Tools From: [email protected] (Mt. You asked for it, we bring it to you... Nyiragongo) Date: 30 Nov 2001 21:04:36 -0800 The AdaIC introduces AdaIC News, a ASCL - Ada Standard Subject: Booch Components free subscription service for Ada users. Component Library Newsgroups: comp.lang.ada When new or updated material is Who would be willing to help a newbie available on the AdaIC website, AdaIC From: "Nick Roberts" Booch components for Ada95? [...] This subscribers. This is a great way to keep Date: Sun, 2 Dec 2001 05:56:57 -0000 up on Ada news and developments. is not a class project. I have a small one Subject: ASCL project on AdaPower.net person project, but a quite serious project, Details at Newsgroups: comp.lang.ada http://www.adaic.org/site/newslist.html. that must be converted from another I'm delighted to announce that a nascent language into Ada. [...] Another service brought to you by the ASCL (Ada Standard Component Ada Resource Association. From: Simon Wright Library) project has been set up at: http://www.adapower.net/ascl/ AdaIC Web Site Updates Date: 01 Dec 2001 08:02:38 +0000 Many thanks to David Botton. Subject: Re: Booch Components From: Editorial Webmaster I'd like this to be the 'home' of the project Newsgroups: comp.lang.ada for the foreseeable future, and I'd like to Please look at Date: Sun, 27 Jan 2002 21:38:56 -0500 extend an invitation to anyone who http://www.pushface.org/components/bc/ Subject: [AdaIC] Technical Articles and wishes to contribute: designs (unit specs case-study.html -- if it doesn't help, ask Trainers page added to AdaIC Website and /or documentation); implementations me again! (and please also note the To: AdaIC News List (unit bodies and/or documentation); advice to use Collections instead of Lists) general ideas, comments, kudos, etc.; anything else relevant. From: [email protected] (Mt. 1) A link we gave you in the last Nyiragongo) announcement to the free textbook page If so, please e-mail me: Date: 1 Dec 2001 19:21:10 -0800 has changed to: [email protected] Subject: Re: Booch Components http://www.adaic.org/free/freebook.html The issue of licence comes up again: I Newsgroups: comp.lang.ada 2) We've added an Ada Trainers page to suggest that everything put onto the [...] Your case study page is quite a big the menu (it used to be a stealth page), ASCL site is published under the help in getting started. What a herculean and Ada Solutions, Inc., has been added GPL/LGPL/GMGPL/GPDL. (The ACL effort writing those components must seems a possible alternative.) have been. [...]

Ada User Journal Volume 23, Number 1, March 2002 10 News – Ada-related Tools

discussion list where we make see: http://www.openvms.compaq.com/ Booch Components announcements and take bug reports etc. wizard/openvms_faq.html#VMS9 From: Simon Wright So if you like living on the edge check it [See also "Ada compilers for VMS" in out and pass the info along to any Mac AUJ 22.4 (December 2001), p.198. -- dc] Date: 19 Jan 2002 07:11:17 +0000 OS folks who you think might be Subject: Booch Components 20020117 interested. [...] GNAT 3.14p for DOS Newsgroups: comp.lang.ada [See also "GNAT for Mac OS X" in AUJ From: "Victor Shkamerda" 22.4 (December 2001), p.200. -- dc] This release has been uploaded to http://www.pushface.org/components/bc/ From: jim Date: Mon, 04 Feb 2002 09:24:57 +0200 and is mirrored at Date: Thu, 27 Dec 2001 00:33:23 -0500 Subject: ANNOUNCE: GNAT 3.14p for http://www.adapower.net/booch/ . Subject: Gnat for OS X announcement DOS now available There was an unannounced release Newsgroups: comp.lang.ada To: "GNAT Discussion List" 20011011. There are directions for building gnat Significant features since 20010819: from the FSF gcc sources as well as You can download it from preliminary (very preliminary) binaries Interface: http://prdownloads.sourceforge.net/ for gnat1 and gnatbind on gnuada/gnat314b. or The Containers that don't provide www.adapower.net/macos/. ftp://download.sourceforge.net/pub/ structural sharing (Bags, Collections, This is VERY bleeding edge stuff so its sourceforge/gnuada/gnat314b.zip. The Dequeues, Maps, Queues, Rings, Sets not yet for the faint of heart. By source patches will follow eventually. and Stacks) now support Streams ('Input, tomorrow the run time system stuff [...] 'Output). Unfortunately, GNAT 3.13p should be there. The compiler has some doesn't support this for dynamic or problems but it will build itself and Quaternion and Matrix unbounded forms (runtime errors), while bootstrap as well as the non-tasking ObjectAda fails at runtime when the Item Library examples. There is info on the site as type is a discriminated record (OK for well as to how to subscribe to the public From: "Gautier Write-only-address" tagged types, though). Walking on gnat for macosx mailing list where we broken glass here. will be making announcements and trying Date: Wed, 21 Nov 2001 10:38:02 +0000 The way Storage Management is to help people who want to give it a try. Subject: Re: standard library and 3D math specified has changed significantly: you library? Anyone who thinks they can get the now supply a single generic parameter of Newsgroups: comp.lang.ada darwin gdb working with ada extensions type System.Storage_Pools. would be welcomed with open arms ;-) > Do anyone know of a good 3D math Root_Storage_Pool'Class. This will be We havent gotten around to that yet but library that support quaternions and painful to start with, but should simplify we really need it (grin) matrix operation? matters in the long run. The Gnat for Mac OS X team No quaternions, but a full autonomous You couldn't override equality for a 3D math library, : see From: Andrew Reynolds Map's Key. Camera_3D.ads/.adb in paqs.zip on Contributions: Pat Rogers has added a http://www.mysunrise.ch/users/gdm/gsoft Date: Wed, 30 Jan 2002 03:16:17 GMT storage manager for real-time .htm Subject: ANN: GNAT for Mac OS X/Darwin applications. Newsgroups: comp.lang.ada From: Stephen Leake I am pleased to announce that the FSF- GNAT for Mac OS Date: 21 Nov 2001 12:47:31 -0500 GCC version of GNAT-5.0w has been X/Darwin Organization: NASA Goddard Space Flight ported to Mac OS X/Darwin. This is a Center beta version that includes GNU pth From: jim hopper Subject: Re: standard library and 3D math tasking. The binaries and a file are library? available at: http://adapower.net/macos Date: Tue, 25 Dec 2001 19:55:42 -0500 Newsgroups: comp.lang.ada Subject: Ada of Mac OS X There is a mailing list available for users I have a complete quaternion library. [...] To: [email protected] of the software (see link on page). I wrote it while doing robots, and I've Just trying to get the word out. A group reused it in a satellite simulator. It of us have been working on getting gnat Compaq Ada on VAX or supports quaternions, conversions to work with OS X. Alan and Andrew Alpha between quaternions and 3x3 Reynolds made big progress last week. From: [email protected] (Larry orthonormal matrices, and operations The compiler bootstraps and builds tools Kilgallen) with 3D vectors. and libs. It has some problems that we Date: 9 Jan 2002 12:23:56 -0600 have been working hard on. Biggest is [See also "SAL - Stephe's Ada Library" Organization: LJK Software that exceptions don't work. They compile earlier in this AUJ issue. -- dc] Subject: Re: Ada on the VAX? fine, but if one is raised the program Newsgroups: comp.lang.ada segfaults. But some people like to live on Support for NaN and Inf the edge and so we have put up a web [In reply to a request on how to get an Semantics page thanks to david bottom and Ada compiler for a VAX: -- dc] From: "Steven Deller" adapower at The documentation for Compaq Ada (nee that walk DEC Ada (nee VAX Ada)) is the same Date: Sat, 22 Dec 2001 11:56:46 -0500 you though bootstrapping the compiler for either VAX or Alpha. It is available Subject: Math Update for Ada 2005 starting from a bare gnat1 and gnatbind in PDF form at: Newsgroups: comp.lang.ada on the web page and the FSF sources http://www.openvms.compaq.com/ (page tells how to get them). In addition commercial/ada/documentation.html All the email about Math libraries it tells how to join our Mac OS For software and licensing information, reminded me of one of Ada 95's shortcomings.

Volume 23, Number 1, March 2002 Ada User Journal News – Ada-related Tools 11

The IEEE math definitions have included From: Adrian Hoe Newsgroups: comp.lang.ada NaN and Inf semantics for quite some > Does anyone have a good suggestion time. Many (if not all) native platforms Date: Tue, 05 Feb 2002 18:24:05 +0800 how to load a bitmap (possibly xbm and many embedded platforms can Organization: Lexical Integration (M) Sdn format) from a file and add is as a support this. I have run into C++ and C Bhd texture in openGL? I have tried to use code that uses these. Ada 95 does NOT Subject: Improved version (2002/1/26) of a pixmap as texture parameter, but support these. Interfacing Ada with C or MT19937 PRNG haven't succeded (yet). C++ code that uses these can be quite a Newsgroups: comp.lang.ada pain. You may want to adapt methods from the I have implemented the latest revised source there How could we add these semantics into (2002/1/26 by Makoto and Takuji) http://romka.demonews.com/opengl/ Ada 2005 without breaking past code and version of MT19937 PRNG with demos/glut_eng.htm without *forcing* platforms to support improved initialization by array. (and around). It seems portable... this (if they don't do so easily). [...] This is a simple and straight-forward From: Joachim Schröer From: [email protected] (Robert Dewar) implementation. I am currently working Date: 23 Dec 2001 07:13:52 -0800 on a version which allows multiple Date: Tue, 08 Jan 2002 16:18:55 +0100 Subject: Re: Math Update for Ada 2005 streams of generator. A comparison Subject: Re: Loading bitmap as texture in Newsgroups: comp.lang.ada output can be downloaded from Makoto's openGL Ada 95 was carefully designed so that website. Newsgroups: comp.lang.ada support can be added for infinities and It can be downloaded from my website Look at the OpenGL framework in Nan's without in anyway violating the [see above]. http://www.adapower.com/schroer/ To RM semantics, and in fact GNAT does From: Hugo Pfoertner download the first zip give: support the use of Inf and Nan semantics http://www.adapower.com/schroer/lib- in full generality, though it does not Date: Tue, 05 Feb 2002 22:35:46 +0100 src.zip (the current url is false). Look into provide all the IEEE facilities for Subject: Re: Improved version (2002/1/26) http://www.adapower.com/schroer/ogl- manipulating such values. of MT19937 PRNG src.zip. The package Opengl.Bitmaps is These facilities can be added with Newsgroups: comp.lang.ada Win32 specific but may be ported to external packages. For an *extensive* [...] For information on this very Linux. The package Opengl.Earth uses a discussion of this entire issue see Sam powerful Pseudo Random Number bitmap of the earth to generate a rotating Figueroa's thesis (NYU, Robert Dewar Generator see the "Mersenne Twister globe using 2D-textures. thesis advisor). This thesis addresses the Home Page": [See also "OpenGL Bindings and entire issue of floating-point evaluation http://www.math.keio.ac.jp/~matumoto/ Demos" in AUJ 22.2 (June 2001), pp.72- schemes in high level languages from an emt.html [...] 73. -- dc] IEEE point of view, and specifically proposes a package and other facilities Graph - Multi-system From: Bruce or Tracy Jacobs (pragmas attributes etc) for full support of the IEEE model in Ada 95 in an Graphics Package Date: Fri, 11 Jan 2002 02:57:52 GMT upwards compatible manner. Subject: Re: Graphics From: "Gautier de Montmollin" Newsgroups: comp.lang.ada At least start from Sam's work, don't reinvent the wheel :-) Date: Tue, 27 Nov 2001 22:43:47 +0000 > Somebody knows of some package that Subject: Ann: Graph, not only for DOS allows to load images standard formats From: Brian Rogoff (gif,jpeg,bmp...). Which is the best To: "GNAT Discussion List" graphic package "Adagraph, Date: Sun, 23 Dec 2001 22:43:39 GMT Gwindows..." ???? Subject: Re: Math Update for Ada 2005 Just a word to announce a multi-system Newsgroups: comp.lang.ada version of Graph, an old package of mine Check with Stephen Leake . He Excellent advice, thanks. I'll answer the inspired by the one of Borland Pascal. Now it features DOS, Windows, and a has Windex package that will read BMP, next question for the clueless: possibly GIF, too. http://www.cs.nyu.edu/csweb/Research/ version is OS-independent (no display to Theses/figueroa_sam.pdf screen of course). [See also "Windex 1.04 - Thick Binding Graph is rather a "high-level" graphics to Win32" in AUJ 21.1 (April 2000), Mersenne Twister MT19937 layer that can display on several devices, p.30. -- dc] Pseudo Random Number use floating-point coordinates on a virtual (Want to have some fun? Read the GIF Generator plane as well as integer ones on a page. specs and write a program to read a GIF Lines are clipped, vectorial fonts are part image. Been there, done that. Am trying From: [email protected] (Adrian Hoe) of the Ada sources and can be displayed with JPEG, but it appears to be even Date: 28 Jan 2002 00:43:35 -0800 with any angle, and bla bla bla. Shortly: more difficult.) Subject: Ada implementation of Mersenne aimed for scientific plotting - E.g. I'm From: "Gautier Write-only-address" Twister (MT19937) using it for it :-). More @ Newsgroups: comp.lang.ada http://www.mysunrise.ch/users/gdm/ Date: Fri, 11 Jan 2002 05:47:13 +0000 graph.htm I could not find an Ada implementation Subject: Re: Graphics of MT19937 pseudo random number Loading Images in Newsgroups: comp.lang.ada generator by searching CLA. So, I If it can help, there are GIF and BMP decided to port Makoto Matsumoto and Applications decoder there http://www.mysunrise.ch/ Takuji Nishimura's work to Ada. From: "Gautier Write-only-address" users/gdm/e3d_html/svga-io__ads.htm Thought someone might be interested to [On the "best graphic package": -- dc] use MT19937. You can download the Date: Tue, 18 Dec 2001 09:27:33 +0000 It depends on the direction it should be source from my web site at Subject: Re: Loading bitmap as texture in "best" - speed, vectorial graphics,... Of http://greenlime.com/users/adrian.hoe openGL course for the latter I couldn't recommend

Ada User Journal Volume 23, Number 1, March 2002 12 News – Ada-related Tools but this: http://www.mysunrise.ch/ I am currently working on completing Subject: Re: Graphics in GNAT for users/gdm/graph.htm ;-) GTK+ bindings that will be integrated Windows, how? From: "Beard, Frank" with GWindows that will allow for all the Newsgroups: comp.lang.ada whiz bang stuff that MS has been > An example, please. Date: Fri, 11 Jan 2002 11:50:50 -0500 pumping about XP's graphics (loading, modifying and savings of most graphic DirectX, AdaGraph, JEWL, Gwindows, Subject: RE: Graphics GtkAda, Opengl...? [...] Newsgroups: comp.lang.ada types, Alpha channels etc.) on Win98/ME/NT/2K/XP). From: Stephen Leake If you have the Win32 binding, you can use Win32.Winuser.LoadBitmapFile. If I Any library you would use from C/C++ to load in GIF's, etc. can be used with Date: 29 Jan 2002 13:29:38 -0500 remember correctly, it will load all three Organization: NASA Goddard Space Flight of the ones you listed. Ada also. Take a look at the way I build the thick GWindows bindings, in Center From: Stephen Leake particular how each function is bound in Subject: Re: Graphics in GNAT for the body of the procedure and makes far Windows, how? Date: 11 Jan 2002 15:01:37 -0500 more use of the excellent design of Ada's Newsgroups: comp.lang.ada Organization: NASA Goddard Space Flight ability to bind to C then thin bindings do. The recently posted Othello game is a Center I would also recommend looking at good example of graphics in Ada for MS Subject: Re: Graphics Windex to get a handle on thin binding as Windows or X Windows: Newsgroups: comp.lang.ada well. http://greenlime.com/users/adrian.hoe/ Necros writes: Engine_3D v.014 - 3D [See also "AdaOthello - Another GtkAda- > I'm programming a Concurrency game based Game" further in this AUJ issue. -- in Ada95, and i would want to be able Graphic Engine dc] to generate the initial graphic elements From: [email protected] Here's a Windex application with from external program (Paint Shop bitmapped graphics in Ada: Pro, Corel Draw)... it would only (Gautier) Date: 15 Jan 2002 14:35:59 -0800 http://users.erols.com/leakstan/Stephe/ [load] them in virtual memory to begin, Ada/mandelplot.html and it would create miscelenea later Subject: Ann: Engine_3D v. 014 with them... In language C is easy, Newsgroups: comp.lang.ada From: "David Botton" What's new: You must mean "using this wizzy Date: Tue, 29 Jan 2002 22:31:56 -0500 graphics package I have that has a C - reaction against objects Subject: Re: Graphics in GNAT for interface, it is easy". (Engine_3D.Physics) Windows, how? > in Ada, I don't Know for where to - bump mapping for textures Newsgroups: comp.lang.ada begin... - support for animated textures GWindows - Write a binding to the wizzy graphics - Demo_3D_01 improved (sounds, a bit http://www.adapower.com/gwindows package, and do the same things you of interaction) About 20 examples here tutorial style - were doing in C. Then publish the Engine_3D is pure software real-time 3D http://www.adapower.com/gwindows/ binding, so the rest of us can do the same user_guide.html Many more inside the :). renderer: it doesn't use any 3D hardware of the graphics cards - an OpenGL package. > The game is a practice, PCMAN Vs variant is foreseen. It features texture From: John English Monsters. mapping and rendering of an "universe" Date: Wed, 30 Jan 2002 10:22:13 +0000 I'd like to see that, enough that I'll offer to by the portal technique. Note that it is a Organization: University of Brighton help. I wrote Windex, an Ada binding to 3D engine, not a 2.5D like the ancestors Subject: Re: Graphics in GNAT for Win32. If you don't mind being restricted DOOM or Duke Nukem. Windows, how? to Windows, it's a good way to go (see [See also "3D Graphic Engine" in AUJ Newsgroups: comp.lang.ada http://users.erols.com/leakstan/Stephe/ 21.2 (July 2000), p.104. -- dc] Have a look at http://www.it.bton.ac.uk/ Ada/windex.html). I can help you write Beside the package itself comes a library staff/je/jewl/. In particular, look at the binding to the wizzy graphics http://www.it.bton.ac.uk/staff/je/jewl/ package, or just use Windex straight. allowing game control and sound effects. You can see it in action in demo #01 docs/windows.htm#5 From: David Botton (demos.exe) from the eng3d014.zip [See also "JEWL 1.4 - John English's Date: Sun, 13 Jan 2002 11:00:30 -0500 archive. Window Library for MS Windows" in Subject: Re: Graphics AUJ 22.1 (March 2001), p.18. -- dc] Newsgroups: comp.lang.ada Programming language: Ada95 for all components. John English, Senior Lecturer, Dept. of Since this is a Windows program. I Computing, University of Brighton, would suggest converting your graphics Requirements: HW: a PC with a VESA- compliant graphics card; OS: DOS or [email protected], in to BMPs and putting them in to you http://www.it.bton.ac.uk/staff/je resources. This way you get one EXE most Virtual DOS Machines like with everything in it. If size is a factor, provided by Windows 95/98/ME, From: "Randy Brukardt" you can using UPX to compress your Windows NT/2000/XP, DR-DOS (multi), exe. Linux's DOSEMU Date: Wed, 30 Jan 2002 14:07:35 -0600 Subject: Re: Graphics in GNAT for GWindows URL: http://www.mysunrise.ch/ users/gdm/e3d.htm Windows, how? (http://www.adapower.com/gwindows) is Newsgroups: comp.lang.ada currently the best Modified GPL (ie. Free as in liberty) library available (I wrote it, Graphics Packages The Claw Introductory version works so I am biased of course :-) with GNAT, and contains a variety of From: "chris.danx" examples. Get it at [See also "GWindows - Ada 95 Win32 http://www.rrsoftware.com/html/prodinf/ RAD Framework" in AUJ 22.4 Date: Tue, 29 Jan 2002 18:23:12 -0000 claw/clawintro.html. (December 2001), pp.212-213. -- dc]

Volume 23, Number 1, March 2002 Ada User Journal News – Ada-related Tools 13

[See also "Claw Introductory Edition - GNU.PDF - Portable Newsgroups: comp.lang.ada High Level Binding for Microsoft You may download Windows" in AUJ 22.1 (March 2001), Document Format Library Binding http://www.adapower.com/schroer/lib- p.18. -- dc] src.zip From: [email protected] From: Paul Pukite Look into package Date: Thu, 31 Jan 2002 06:14:07 GMT Date: Fri, 28 Dec 2001 01:18:06 -0600 portable.operating_system, function Subject: Re: Graphics in GNAT for Subject: NEW Ada PDF library binding all_entries and set the parameters as you Windows, how? (GNU.PDF) like. The package is implemented on top Newsgroups: comp.lang.ada To: "GNAT Discussion List" of the Ada posix-binding for win32. In There are also example programs on the body some win32 features are called www.adapower.com that use the intro This message is to announce the directly. Simply comment them out if version of Claw in several different type availability of a new binding you need the function for another OS of graphics: implemented for the GNU/Ada library than win32. http://www.adapower.com/os/ hierarchy: GNU.PDF From: "Jean-Pierre Rosen" orbitals.html; http://www.adapower.com /os/windmine.html; PDF refers to the Portable Document Format. The PDF library enables one to Date: Wed, 23 Jan 2002 14:47:52 +0100 http://www.adapower.com/lang/ Organization: Adalog diners_src.zip and diners_exe.zip generate PDF files or data streams on the fly. The binding I created copies the Subject: Re: Directory listings and path From: Preben Randhol style of an OpenGL programming names interface. If you know how to handle Newsgroups: comp.lang.ada Date: Thu, 31 Jan 2002 09:02:16 +0000 context scopes, etc. you should feel at > [...] it would be a good idea for Ada to (UTC) home using it. The binding is small but provide a semi-standard interface to an Organization: Norwegian university of packs a wallop: fonts, rotations, skewing, OS file system. It would necessarily be science and technology filling, URL links, and lots of other reduced to the least common Subject: Re: Graphics in GNAT for features. denominator Windows, how? Newsgroups: comp.lang.ada Navigate to this URL to download the Not necessarily. Have a look at package binding: http://umn.edu/~puk OS_Services from Adalog's component > What's the best graphics package to [And from another message: -- dc] page (http://www.adalog.fr/compo2.htm) generate a game with bitmaps and for a system that allows a lot of image scrolls??? Thanks, [GNU.PDF] can be linked against the flexibility. It achieves the following goal: SDL is used a lot. http://www.libsdl.org/. following library: - if functionnality XYZ is provided, it Ada binding to SDL: http://www.pdflib.com/pdflib. The works independently of the OS - if http://sourceforge.net/projects/adasdl/ library archive is named libpdf.a functionnality XYZ is *not* provided [See also "AdaSDL - Binding to Simple OS File System Bindings (and you need it), it doesn't compile. DirectMedia Layer (SDL)" in AUJ 22.3 In short, a program will work on any (September 2001), p.141. -- dc] From: "Andreas Valdusson" platform that supports the functionnalities Preben Randhol, «For me, Ada95 puts needed by the program. back the joy in programming.» Date: Thu, 17 Jan 2002 12:21:24 +0100 From: Georg Bauhaus From: "David Botton" Technology Date: Sat, 19 Jan 2002 14:20:44 +0000 Subject: Directory listings and path names (UTC) Date: Thu, 31 Jan 2002 15:28:09 -0500 Newsgroups: comp.lang.ada Subject: Re: Graphics in GNAT for Subject: Re: Directory listings and path Windows, how? If I have the name of a directory, and names Newsgroups: comp.lang.ada want Ada to get the names of all sub- Newsgroups: comp.lang.ada directories of this one, how do I do? A combination of GWindows for your > True, but Ada should provide the How do I get the contents of a specific support out of the box. windows and DirectX and if you need it directory (ie. the names for all OpenGL. There is an example of doing subdirectories and files) and how do I [...] the pointer might still be useful: OpenGL with GWindows on the know which of these that are sub- From http://www.ada-auth.org/AI- GWindows page - directories an which are files? SUMMARY.HTML: http://www.adapower.com/gwindows From: "M. A. Alves" AI95-00248-01/04 2002-01-02 -- From: [email protected] (Ted Date: Thu, 17 Jan 2002 14:26:18 +0000 Directory Operations; Priority: Medium; Dennison) (GMT) Difficulty: Medium; Class: Amendment; Date: 31 Jan 2002 11:39:03 -0800 Subject: Re: Directory listings and path Status: Work Item 00-11-28; RM Subject: Re: Graphics in GNAT for Linux, names References: A.15 (00) how? Newsgroups: comp.lang.ada Newsgroups: comp.lang.ada From: Robert A Duff See also GNAT.Directory_Operations. Why not just make it yourself? Bindings Mario Amado Alves, LIACC, Rua Date: Sat, 19 Jan 2002 14:28:22 GMT aren't all that tough, particularly when Organization: The World Public Access they are "semi-thick" bindings and you Campo Alegre, 823, P-4150 Porto, Portugal, tel 351+226078830, ext 121, UNIX, Brookline, MA already have thin bindings to work off of. Newsgroups: comp.lang.ada You'd only need to make ones for the fax 351+226003654, mob 351+939354002 Subject: Re: Directory listings and path routines you use. [...] names From: Joachim Schröer T.E.D., http://www.telepath.com/ [...], the ARG is working on a directory dennison/Ted/TED.html Date: Fri, 18 Jan 2002 14:09:12 +0100 operations package. [...], any interface-to- Subject: Re: Directory listings and path OS package has to be somewhat "least- names

Ada User Journal Volume 23, Number 1, March 2002 14 News – Ada-related Tools common-denominator"-ish, if it is to be do this of course to ensure that it builds This package requires the GNADE code portable. outside its foundry ;-) version 1.2.0. Both are available via: From: "Nick Roberts" GNADE is the implementation of an Date: Sat, 19 Jan 2002 23:02:43 -0000 embedded SQL precompiler that is Call for Review: Database Subject: Re: Directory listings and path reasonable close to the ISO92 specs. All API for the GNADE Project names the native bindings for MySQL or Newsgroups: comp.lang.ada PostgreSQL are more or less placeholders From: Michael Erdmann for future efforts. The ESQL > It would also be nice to provide more Date: Sat, 29 Dec 2001 22:19:12 +0100 specific packages, like, say, Windows, preprocessor is built on the ODBC binding and this was a good decision Organization: Unix/Posix, Mac (and also rans like http://purl.org/NET/michael.erdmann VMS, BeOS, Amiga,... :). because we were able to interface with a variety of different databases on different Subject: Call for review: Database API for The proposed package will allow platforms without changing a single line the GNADE Project implementation-defined children which of source code. Newsgroups: comp.lang.ada provide extra functionality specific to a Since the GNADE project provides a particular OS or execution environment. Nevertheless ESQL is not the most elegant way to integrate generic database stable data base interface on ODBC and On Databases and Ada support with Ada95, although it is a embedded SQL bais it is time to make a reasonable approach for smaller apps. new step. In the past very often the request for a data base API was issued. From: Preben Randhol And ODBC is fine as long as you don't This API shall allow to connect to have to scale for thousands of multiple data bases either via ODBC or Date: Wed, 28 Nov 2001 22:21:47 +0000 simultaneous connections to your any native bindings without major (UTC) backend. But the GNADE project is open changes in the application code. Organization: Norwegian university of for the discussion of better approaches. science and technology Personally my favourite scenario is still I like to invite every body to review the Subject: Re: Using MySQL from Ada to have a GNAT.NET compiler for the early draft version of API description [...] program .NET platform and then simply to reuse located at: Newsgroups: comp.lang.ada the very rich ADO.NET architecture for http://gnade.sourceforge.net/ado.html. data access from Ada. My 2c :-) > Hello, I want to access a MySQL Windmine - Windows database from my Ada program. What From: Pascal Obry is the best way? Anyone who can give Date: 29 Jan 2002 18:30:26 +0100 Version of Mine Detector me an example? Subject: Re: travailler sur une base de Game Check the GNADE Project: données en ada http://gnade.sourceforge.net/ Newsgroups: fr.comp.lang.ada From: [email protected] Date: Tue, 18 Dec 2001 02:16:29 GMT [Extracts translated from French: -- dc] [See also "GNADE - GNU Ada Database Subject: Windows-ish Mine Detector, was Environment" in AUJ 22.3 (September > [...] I'd like to know how to work with Re: Ada IDE 2001), p.144. -- dc] databases using Ada, and whether it's Newsgroups: comp.lang.ada posible to use SQL as in C or C++. [And from a later message: -- dc] > It may sound strange, but when I From No, no!! For that see the GNADE pointed Jeffrey Carter's Mine Detector http://gnade.sourceforge.net/#status: project, which is a complete binding + Game to some of my friends (who are Binding to MySQL which is intended to Embedded SQL (a la Pro*Ada) for just typical computer users and have provide access to the non ODBC features GNAT. GNADE works with MySQL, nothing common with operating of the MySQL data base. License: Postgres and all DBs that support ODBC. systems other than Windows), they GMGPL http://gnade.sourceforge.net/ said, that they felt very strange and have troubles to get familiar with GTK From: "M. A. Alves" GSQL 0.6 - GNADE SQL look. [...] Date: Fri, 30 Nov 2001 16:19:22 +0000 Subject: Re: Using MySQL from Ada Client [See also "Mine Detector Game" in AUJ program 22.4 (December 2001), p.205. -- dc] From: Michael Erdmann Newsgroups: comp.lang.ada As an exercise I modified the user Yes, GNADE seems very nice now. Date: Fri, 21 Dec 2001 11:42:18 +0100 interface package user_if.ad? to create a Very recent developments. Finally one Organization: Windows-ish version. Windmine, a http://purl.org/NET/michael.erdmann version using the free introductory application is announced, GSQL. I'll version of Claw, has been kindly posted check it out. Thanks. Subject: Early prerelease of GSQL 0.6 Newsgroups: comp.lang.ada by David Botton at www.adapower.com From: "Juergen Pfeifer" Search for "Mine Detector". No changes The prerelease of the GNADE SQL client were required in the game logic Date: Sun, 2 Dec 2001 02:09:18 +0100 is available. The basic features are: packages. Subject: Re: Using MySQL from Ada creating/editing and execution of SQL program queries; support of table creations. Not AdaOthello - Another Newsgroups: comp.lang.ada yet implemented but soon: import/export features. GtkAda-based Game [In response to "the impression GNADE is not working anywhere outside its The client is completly based upon From: [email protected] (Adrian Hoe) foundry." -- dc] ODBC which means its functionality Date: 28 Jan 2002 00:39:19 -0800 should be available with all DBCS which Subject: Othello game written in Ada Well, from time to time I try to build support ODBC. Newsgroups: comp.lang.ada GNADE on machines where I only have GNAT and the required basic GNU tools I have written an Othello program in and it usually builds without problems. I Ada. It is called AdaOthello. You can

Volume 23, Number 1, March 2002 Ada User Journal News – Ada-related Tools 15 download from my website at Date: Wed, 19 Dec 2001 09:02:31 -0700 information. He has to modify the http://greenlime.com/users/adrian.hoe. Subject: Re: Generator of parsers for Ada ? OpenToken parser at several places until Enjoy! To: [email protected] it worked. From: Stephen Leake > We are looking for tools like Christoph Grein, Member of Ada LEX/YACC which can generate Ada Germany, http:/www.ada-deutschland.de, Date: 28 Jan 2002 09:50:08 -0500 lexer/parser. According to our wishes, http://home.T-Online.de/home/Christ- Organization: NASA Goddard Space Flight these tools should generate GOOD Ada Usch.Grein Center code, i.e. it shouldn't be C code which Subject: Re: Othello game written in Ada can be compiled by Ada compiler but Aflex and 8-bit Characters Newsgroups: comp.lang.ada real good style Ada code. From: "Gautier Write-only-address" Cool. Have you attempted to get this There is also AdaGOOP, a tool which sits working on GtkAda for Windows? on top of aflex and ayacc, which is at Date: Fri, 18 Jan 2002 08:45:56 +0000 ftp://ftp.usafa.af.mil/pub/dfcs/carlisle/ I wouldn't mind spending some time on Subject: Re: Aflex and ASCII-8 characters usafa/adagoop/index.html. This that. Newsgroups: comp.lang.ada automatically fills in actions for lex/yacc From: Jeffrey Carter so that an object-oriented parse tree is > I wanted to know if someone has Date: Tue, 29 Jan 2002 05:39:34 GMT built. modified Aflex source so as to parse Subject: Re: Othello game written in Ada ASCII-8 characters. Newsgroups: comp.lang.ada Martin C. Carlisle, PhD, Associate Professor of Computer Science, Advisor The Aflex version in newp2ada.zip [...] is Adrian Hoe wrote: in Charge, United States Air Force able to parse 8-bit characters. > It should work on Windows. I would Academy http://www.mysunrise.ch/users/gdm/gsoft appreciate if someone compile it on .htm Windows and let me know the More Parser Generators for From: Pascal Obry outcome so that I can update in my Ada Date: 18 Jan 2002 18:41:55 +0100 web site. I trashed Windows years ago. Subject: Re: Aflex and ASCII-8 characters :) From: Pascal Obry Newsgroups: comp.lang.ada Date: Wed, 19 Dec 2001 15:49:58 +0100 I was able to compile and run it on There is one version available on my Subject: Re: Generator of parsers for Ada ? Win98 with GNAT 3.13p and GtkAda homepage. It is a port to GNAT and can To: [email protected] 1.3.12 without modification. be used with ASCII-8 characters. Direct Yep. There is [...] Ted Denisson's link (the Web pages are in French): The Fodderbot Project - an OpenToken. http://perso.wanadoo.fr/pascal.obry/ Empire AI Client http://www.telepath.com/dennison/Ted/ contrib.html OpenToken/OpenToken.html [...] From: [email protected] (Ted [See also "OpenToken 3.0b - Token Computing with SI-units Dennison) Analysis and Parsing Package" in AUJ Date: 31 Jan 2002 07:26:16 -0800 21.3 (October 2000), pp.165-166. -- dc] From: [email protected] (Lutz Subject: Re: Graphics in GNAT for Linux, Donnerhacke) how? From: Terry Westley Date: Wed, 28 Nov 2001 11:11:10 +0000 Newsgroups: comp.lang.ada Date: Wed, 19 Dec 2001 13:22:26 -0500 (UTC) Subject: Re: Generator of parsers for Ada ? Organization: IKS GmbH Jena [...] Why not just make [the bindings] To: [email protected] Subject: Computing with SI-units yourself? [...] Look at AdaScript and BUSH: Newsgroups: I'm not just saying this; I've done it. I had . http://www.iks-jena.de/mitarb/lutz/ AI shell, and like you I was given my ada/units/ choice of language to use. The project I BUSH is an interactive shell for Linux made is here - with both Bourne and Ada syntax. [...] Computing on SI-units respecting the http://www.telepath.com/dennison/Ted/ AdaScript is a subset of the Ada 95 unit dimensions. There are two different Fodderbot/Fodderbot.html, and the semi- language with additional features implementations: One that uses simple thick CLIPS bindings I made for it are specifically for interactive shell sessions. types and so requires explicit convertion here - The BUSH distribution includes the between multiplication and addition, http://www.telepath.com/dennison/Ted/ scanner and parser source code. Whether while the tagged variant reduces a AdaClips/AdaClips.html. or not it is based on lex/yacc or substantial amount of such typing. [From the URL above: "The purpose of alex/ayacc, I don't know. The problem is known in comp.lang.ada the Fodderbot Project is to create an AI [See also "BUSH 0.8 - AdaScript Shell" as the "matrix operations with compile player for the game Empire. Empire is a in AUJ 22.4 (December 2001), pp.205- time discriminant checking" problem. A multiplayer wargame and empire 206. -- dc] solution to the matrix-problem allows a very efficient implementation to the SI- simulation. It is typically played over the From: Christoph & Ursula Grein also be valueable for the matrix people. game maintenance and actions, and Date: Sun, 13 Jan 2002 14:08:23 +0100 clients acting as the player's user Subject: Re: Generator of parsers for Ada ? Example of ISO/OSI interface and transmitting commands to To: [email protected] the server." -- dc] Protocol Stack Additionally to Ted Denisson's AdaGOOP - Ada Generator OpenToken (of which Pascal Obry has Implementation informed you already), which has an Ada From: "David C. Hoos" of Object-Oriented Parsers lexer written by me, François Fabien (mail: [email protected]) is working on From: Carlisle Martin C Dr USAFA/DFCS Date: Wed, 28 Nov 2001 05:15:41 -0600 a parser based on OpenToken. Please contact him directly for more

Ada User Journal Volume 23, Number 1, March 2002 16 News – Ada-related Tools

Subject: Re: Example of OSI package/data Date: Sun, 09 Dec 2001 19:52:21 +0000 The decoupling of application and structure? Subject: Ann: aPLib v0.34 released protocol personalities, and the support for Newsgroups: comp.lang.ada Newsgroups: comp.lang.ada multiple simultaneous personalities > Can someone point me to an example aPLib is a 32bit compression library for within the same running middleware are of an implementation for the ISO/OSI Intel x86, with bindings for various key features required for the construction protocol stack? I have a description of systems & languages. of interoperable distributed applications. a protocol that has to be coded in This allows PolyORB to communicate More on that page: with middlewares that implement Ada95. It is now coded (hacked) in a http://home19.inet.tele.dk/jibz/apack/ bad form in Ada83 and I want to different distribution standards: PolyORB download.html. Ada bindings and demo provides middleware-to-middleware redesign it for Ada95. First I need a in the "examples\ada" directory. package structure. I want to decouple interoperability. every layer as much as possible and PolyORB 0.1 - The PolyORB architecture also permits was thinking of a tagged type for the the automatic, just-in-time creation of device and extend it in every next Schizophrenic Object- proxies between incompatible layer. [Details removed. -- dc] Oriented Middleware environments (although this feature is not I know of no implementation (Ada or implemented yet). From: Thomas Quinot otherwise) that strictly follows the OSI Note: PolyORB is the project formerly model. However, there is an known as DROOPI, a Distributed Date: Mon, 10 Dec 2001 12:10:54 +0100 implementation of IP version 4 worth Reusable Object-Oriented Polymorphic Organization: ENST, France looking at here: https://www.iks- Infrastructure. Subject: First release of PolyORB, the jena.de/mitarb/lutz/ada/net/ schizophrenic middleware The PolyORB distribution and further In general, though I would not think it Newsgroups: comp.lang.ada information (including several research wise to derive one layer from the other papers related to PolyORB) can be found We have the pleasure to announce the (going in either direction) because the at the project home page: http://libre.act- first public release of our schizophrenic layers are distinct in their function and europe.fr/polyorb/ object-oriented middleware: PolyORB purpose. The only thing that they should 0.1 Thomas Quinot, Département have in common is that each layer should Informatique & Réseaux, ENST, 46 rue From the README file: have a clean interface with each of its Barrault,75634 PARIS CEDEX 13 neighbors in the stack. PolyORB is a polymorphic, reusable Just off the top of my head, I would start infrastructure for building object-oriented FSMedit 2.0 - Finite State with an organization plan something like distributed systems. Middleware Machines Editor this: Net; Net.Physical; Net.Link; environments are software libraries that Net.Network; Net.Transport; hide the complex issues of distribution From: Christoph Grein Net.Session; Net.Presentation; and provide the programmer with high- Net.Application. level abstractions that allow easy and Date: Wed, 12 Dec 2001 07:07:05 +0100 transparent construction of distributed Each of the above would define abstract (MET) applications. A number of different interfaces from which specific Subject: FSMedit - The Finite State standards exist for creating object- implementations would be derived. [...] Machines Editor - Version 2.0 oriented distributed applications. These Also, in practice the session, presentation Newsgroups: comp.lang.ada standards define two things: and application layers are often collapsed FSMedit is an editor for finite state into one. You will note that I have * the interface seen by the developer's machines. It is written in Ada with the named no package OSI. It just seems to applicative objects; graphical user's interface (GUI) by the me that Net is a better name for the root * the protocol used by the middleware demonstration version of Claw. Thus in package, since this is what it's all about. environment to talk to other nodes in its current version it is restricted to MS As a general implementation scheme I the distributed application. Windows systems. It should however not present any problems to replace the Claw have a task that does a blocking read on Usually, middleware for one platform version by another GUI (only a lot of the physical device, and delivers received supports only one set of such interfaces, work :-). packets to a handler that has been and cannot interoperate with other registered with that task. Such platforms. When the transition diagram of a FSM registrations could be for all packets, or has been specified, a simulation of the A polymorphic middleware allows the only for packets of a certain kind. In this machine can be executed interactively or existence of several different way, the same handler can receive via scripts. From the transition diagrams, implementations of each of these aspects packets from its choice of lower-level Ada code can be generated; also the to be used within the same middleware packet sources. In the send direction, reverse, extraction of transition diagrams framework. In addition, PolyORB allows each layer simply calls a Send procedure from Ada code is possible. for the next lower layer of its choice. such different personalities to coexist in Since the programs I write usually have the same instance of the running [See also "FSMedit 1.4 - Editor for Finite multiple threads of execution wishing to middleware; it decouples the personality State Machines" in AUJ 22.3 (September send to the network, I protect the lowest presented to applications on one side 2001), p.137. -- dc] layer with a semaphore implemented in ("application personality"), and the This new version adds tools for Ada95. personality presented to other reachability analysis and also for middlewares on the other side ("protocol comparison of two machines. I hope these ramblings provide you with personality"). Multiple implementations some food for thought. of each personalisable aspect can coexist FSMedit may be installed in different within the same instance of the running languages. Currently English and German PLib v0.34 - 32-bit middleware: unlike previous generic are available. Further languages can be Compression Library middlewares, PolyORB is actually provided without recompilation, solely by schizophrenic. providing the translation in a language From: "Gautier Write-only-address" file.

Volume 23, Number 1, March 2002 Ada User Journal 18 News – Ada-related Tools

FSMedit has been released under the Gnu - Blocking keyboard reading. the 32-bit version is fully GPL. However, since it is an "editor", - More complete 'printf' and 'scanf' POSIX/UNIX95 compliant. This version any software (i.e. Finite State Machine) functions. of CRCAda95 may be freely distributed you produce with it does not fall under and reused within your own projects. MaRTE OS is being developed in the any licence other than you choose The following files are available: yourself. Group of "Computadores y Tiempo Real" of the Department of "Electronica y - crcada95.doc: a copy of the author's To download FSMedit together with Ada Computadores" of the University of paper in Ada Letters (MS Word 6.0 source code and a complete user's Cantabria. document); manual, see http://home.t-online.de/ home/Christ-Usch.Grein/Ada/FSM.html For more extensive documentation and - crcada95.ada: the source code; downloading please visit the following - crcada95.crc: a listing with MaRTE OS 1.0 - Minimal URL: http://marte.unican.es/ POSIX/UNIX95 CRCs of the above Real-Time Operating For comments, suggestions, doubts, two files. System for Embedded problems, etc., send an e-mail to Mario Aldea Rivas: mailto:[email protected] ACF - Ada Cryptographic Applications [...] Framework From: Mario Aldea Rivas Mario Aldea Rivas, Grupo Computadores y Tiempo Real, Dpto. de Electronica y From: [email protected] Date: Tue, 18 Dec 2001 13:52:56 +0100 Computadores, Facultad de Ciencias, (Antonio Duran) Organization: Universidad de Cantabria Universidad de Cantabria, Avda. Los Date: 8 Jan 2002 00:45:55 -0800 Subject: MaRTE OS version 1.0 released ! Castros s/n, 39005 Santander (Cantabria), Subject: [ANOUNCE] Ada Cryptographic Spain, Tfno. +34 942 201477, Fax +34 Framework (ACF). First alpha release MaRTE OS version 1.0 released ! 942 201402, E-mail [email protected] Newsgroups: comp.lang.ada MaRTE OS (Minimal Real-Time The first alpha release of the Ada Operating System for Embedded CRCAda95 - Cyclic Cryptographic Framework is available at Applications) is a real-time kernel for Redundancy Checks project's site in SourceForge embedded applications that follows the http://sourceforge.net/projects/adacf. It Minimal Real-Time POSIX.13 subset, From: sudhakar reddy menakuru consists of the functionality for providing both the C and Ada language computing secure hashes according to the POSIX interfaces. Date: Mon, 24 Dec 2001 04:31:13 -0800 next algorithms: MD2, MD4, MD5, [See also AUJ 22.1 (March 2001), p.10. - Subject: Crc calculation in ada 83 or 95 SHA-1, RIPEMD-128, RIPEMD-160, - dc] To: [email protected] HAVAL, TIGER, as well as test drivers This is Sudhakar Reddy from India. I am for those packages and a draft of the It allows software cross-development of user's manual. Ada and C applications using the GNU facing one problem in calculation of crc compilers Gnat and Gcc. Remote of an array of 226 bits [...] If any one Visit the CVS repository to see other debugging of applications is also possible have algorithm or code in Ada 83 or Ada packages currently under development using the GNU debugger gdb. MaRTE 95 please give me reply as early as (multiprecission natural numbers OS is available under the GNU General possible. arithmetic, secure random generators, Public License. From: Dirk Craeynest etc.). If you wish to participate in the project please contact me. MaRTE OS can be used in industrial and educational environments. In education Date: Mon, 24 Dec 2001 15:03:22 +0100 Javadoc-like Utilities for MaRTE OS can be used as the base of a Subject: Re: Crc calculation in ada 83 or low-cost laboratory for students to 95 Ada experiment with a real-time POSIX To: [email protected] From: Joseph P Vlietstra operating system in a cross-development [...] The following was posted to environment. For industrial purposes it comp.lang.ada several years ago but is Date: 13 Jan 2002 07:24:34 GMT could constitute and good choice since it still available. I hope it helps you. is one of the few real-time OS for Organization: Mojave Systems Corporation embedded applications which is POSIX Ada-Belgium is providing (pointers to) Subject: "Javadoc" for Ada compatible. Ada software, made available by Belgian Newsgroups: comp.lang.ada Ada users. URL of the starting point: MaRTE OS is also useful for research Our company is currently using a home- http://www.cs.kuleuven.ac.be/~dirk/ada- grown documentation generation tool that because, due to its relative small code belgium/software/ [...] size and modularity, it is easy to integrate extracts comments from preambles and test new functionality in it. CRCAda95 - Cyclic Redundancy Checks preceding each Ada function/ procedure. in Ada 95 The tool is written in C++ and generates In this version new functionality has been MIF (FrameMaker Interchange Format) added: Author: Guido Duerinckx, Trasys, Brussels Status: Source code available. files. - Application-Defined Scheduling. Platforms: Portable. We recently updated our C/C++ preamble - Interrupts Management at Application Reference: "Cyclic Redundancy Checks standards to be closer to Java doc Level. in Ada95", by Guido Duerinckx, ACM comments and use Doxygen (Javadoc for C++) to generate documentation. We are - POSIX Sporadic Server Scheduling Ada Letters, Jan/Feb 1997, Pages 41-53, Volume XVII, Number 1 considering changing our Ada preamble Policy. standards in a similar manner. Are there - POSIX Pthread-Specific Data. Abstract: CRCAda95 provides an any doc comment utilities for Ada implementation of standard well similar? - "Task Inspector": A tool for analyzing optimized CRC algorithms in Ada 95. the scheduling activity. The basic CRC algorithm is implemented From: [email protected] Some improvements have been as a generic package. Both 16-bit and Date: Sun, 13 Jan 2002 08:21:38 GMT performed as well: 32-bit CRC instantiations are provided, Subject: Re: "Javadoc" for Ada Newsgroups: comp.lang.ada

Volume 23, Number 1, March 2002 Ada User Journal News – Ada-related Tools 19

We too have a homegrown utility for AdaBrowse 1.0 - a Javadoc [See also "A2ps - PostScript Code Pretty- documentation. It parses so in addition to printer" in AUJ 20.4 (January 2000), copying specs and comments, it can link for Ada 95 p.238. -- dc] types to their declarations and uses, as From: [email protected] (Thomas From: Dominique Canazzi well as parents and children. It generates Wolf) an intermediate form so that a "mail- Date: 2 Feb 2002 05:43:56 -0800 Date: Mon, 21 Jan 2002 22:34:58 +0100 " kind of operation can Subject: AdaBrowse - a javadoc for Ada 95 Subject: Re: Imprimer du source Ada override/expand the mechanically Newsgroups: comp.lang.ada To: [email protected] generated stuff with manually created text, to create input to the final .rtf/.htm AdaBrowse is a javadoc-like HTML http://gnuwin32.sourceforge.net/packages generator. generator for Ada 95. It is , /a2ps.htm copyright (c) 2002 by Thomas Wolf, and From: [email protected] How do other people handle the is distributed under the GPL. [...] problem? Date: Mon, 21 Jan 2002 17:48:15 +0100 AdaBrowse produces a fully cross- Subject: RE: Imprimer du source Ada From: Florian Weimer referenced HTML rendering of Ada 95 To: [email protected] library unit specs (no bodies) similar to There's a reformatter in Adagide: Date: 13 Jan 2002 12:59:42 +0100 what javadoc does for Java sources. Organization: RUS-CERT, University of http://unicoi.kennesaw.edu/ase/ase02_02/ Stuttgart, Germany AdaBrowse generates a *type index* for tools/reformat/ Subject: Re: "Javadoc" for Ada package specs containing all types [See also "Reformatting tool in Newsgroups: comp.lang.ada declared in that package spec. For AdaGIDE" in AUJ 20.1 (April 1999), (tagged) record types, private types, and p.19. -- dc] We use an ASIS-based tool for types derived from those, this type index generating documentation. It extracts the also contains a fully cross-referenced list documentation from comments, and of their primitive operations (whether Ada-related Products automatically adds documented entities inherited, overridden, or newly defined). to the proper index. is the markup language. The system is not AdaBrowse also extracts a "header" ACT - AUnit 1.01 - xUnit comparable to JavaDoc, however, comment (one before the context clauses) Test Framework for Ada because it does not enforce structure in and uses it to construct a general unit the documentation comments. description. From: Ed Falis We plan to release this tool under the Furthermore, AdaBrowse generates an Date: Mon, 03 Dec 2001 16:55:35 GMT GPL, but we have to sort out a few things index of exceptions (including renames). Subject: New version of AUnit available first. If there's a comment in the source Newsgroups: comp.lang.ada, following the exception declaration comp.software.extreme-programming From: Simon Wright immediately (i.e., starting on the next AUnit is a xUnit test framework for Ada. line), it is also extracted and inserted into Date: 13 Jan 2002 20:29:45 +0000 Downloads of version 1.01 are available this exception index as a description of at http://www.libre.act-europe.fr/ Subject: Re: "Javadoc" for Ada the exception. Newsgroups: comp.lang.ada There are two archives: one for Windows Version 1.0 doesn't take apart the source hosts; the other for all other supported [...] for informal use I find gnathtml more of a package spec any further (but it than adequate. hosts (). The framework itself is cross-references and syntax-colors it). platform-independent, provided an Ada We're generating code frameworks (well, This is planned as a future development. compiler is available. at the higher levels of the architecture) AdaBrowse 1.0 is available at the URL Note that if you have a version of GNAT from UML, so we're generating http://home.tiscalinet.ch/t_wolf/tw/ada95/ documentation from the model. Pro, the Glide IDE in v3.14a1 has a new adabrowse as tarred, gzipped files: menu that automatically generates test From: Frode Tennebø - ada_browse_1.0..gz contains the cases, suites and harnesses. sources and a pre-built executable for Date: Sun, 13 Jan 2002 23:51:50 +0100 [See also "Unit Testing Tools" in AUJ GNAT 3.14p on Windows NT or 2000 22.2 (June 2001), p.72 and "ACT - AUnit Subject: Re: "Javadoc" for Ada (680 kB). Newsgroups: comp.lang.ada test framework for Ada" in AUJ 21.4 - ada_browse_1.0_src.tar.gz contains (January 2001), p.230. -- dc] Take a look at: only the sources (50 kB). http://sourceforge.net/projects/adadoc/. ACT - GVD 1.2.4 - GNU [The documentation] is mostly in French. Printing Ada Source Code Visual Debugger [See also "AdaDoc - Html Generator for Ada Package Specifications" in AUJ 22.4 From: Christian Sautereau From: Arnaud Charlet (December 2001), pp.200-201. -- dc] Date: Mon, 21 Jan 2002 14:56:27 +0100 From: [email protected] (Rolf Ebert) Date: Fri, 07 Dec 2001 10:53:46 +0100 Subject: Imprimer du source Ada Date: 16 Jan 2002 01:11:28 -0800 Subject: [ANNOUNCE] Release 1.2.4 of the To: "'Ada-France'" Newsgroups: comp.lang.ada Newsgroups: comp.lang.ada [Extracts translated from French: -- dc] Have a look at GtkAda (http://libre.act- We are pleased to announce the europe.fr/GtkAda/). In the source When I developed under Unix, I used availability of GVD 1.2.4, the GNU distribution is a Perl script that extracts "a2ps" to print source code and I was Visual Debugger, a general purpose the structured comments (similar to very pleased with it. Now I develop graphical debugger front-end licensed javadoc) and generates a texinfo file. under NT and don't know an equivalent under the GNU General Public License. tool. Does someone know such a tool Besides providing all the features of other under Windows? I didn't find an debugger GUIs, GVD includes advanced "operational" port of a2ps for NT (on data display and visualization Internet). capabilities. Furthermore, GVD allows

Ada User Journal Volume 23, Number 1, March 2002 20 News – Ada-related Products the debugging of multi-process/multi- ACT - Ada-mode 3.6 for This is mostly a bug-fix release (memory threaded applications in the same leaks, and a few small issues). The debugging session. GVD works with Emacs 21.1 building of the library should also be a native as well as cross debuggers and can From: Emmanuel Briot script). debugging session and the same Date: 07 Jan 2002 17:38:26 +0100 Supported users of ACT or ACT-Europe application. Currently Ada, C and C++ Subject: [ANNOUNCE] ada-mode 3.6 for should request that package through their are supported. Emacs 21.1 released usual channels instead. GVD can run on a host different from the Newsgroups: comp.lang.ada machine where the debugger is running A new version of the ada-mode for ACT - New Public Release and provides friendly support for cross- Emacs has been released, that among GNAT 3.14p debuggers (VxWorks, Lynx, etc.). For other things includes a better support for instance, you can use Linux or Windows Emacs 21. From: [email protected] (Robert Dewar) to debug an application running on a Date: 30 Jan 2002 18:49:11 -0800 Power PC board with a debugger running Note that the new official page for the Subject: ACT announces availability of on a Sun workstation. ada-mode is: http://libre.act-europe.fr/ GNAT 3.14p adamode To build GVD we are using the GtkAda Newsgroups: comp.lang.ada GUI technology. GVD comes with all the [See also "Ada Mode 3.5 for Emacs" in Ada Core Technologies (ACT) has made GtkAda benefits such as a pluggable AUJ 22.1 (March 2001), p.11. -- dc] available at the NYU site look-and-feel, a set of very high-level Here is the list of the main changes in the (ftp://cs.nyu.edu/pub/gnat) GNAT 3.14p widgets and the ability to have the same ada-mode. This list doesn't include all the builds for the following targets: look-and-feel on all of your platforms. bug fixes. MS Windows (NT/2K) Sparc Solaris You can dowload GVD (sources and Support for Emacs 21. Emacs 21 is a (2.5.1 through 2.8) GNU Linux (Redhat binaries for GNU/Linux x86, Solaris major new revision of Emacs, that 6.2) sparc and x86, Windows NT/2000, DEC includes some changes in the packages Unix/Tru64, HP-UX, UnixWare, IRIX, The above are the official platforms, but ada-mode depends on. The port has been in practice the NT version works AiX) and get more information at done to the new version. As a result, ada- http://libre.act-europe.fr/gvd reasonable well on Win 98 and Win ME mode 3.6 is probably not compatible with and other versions of GNU Linux [See also "GVD 1.2.0 - GNU Visual older versions of Emacs. including Debian GNU/Linux are known Debugger" in AUJ 22.3 (September Better handling for Ada files that don't to be compatible with this version of 2001), pp.137-138. -- dc] follow GNAT's default naming scheme GNAT. New features in GVD 1.2.4: (.adb for bodies and .ads for specs). These are the only public versions that - General stabilization and improvements ada-xref-search-with- is a new ACT plans to build. As always, the in error/warning messages. variable intended for big projects: it releases contain the full sources, and we allows you to disable the default behavior invite volunteers to create builds for other - Better handling of VxWorks targets. of ada-mode, that will use grep to do a platforms. We also draw attention to the - Friendler handling of Yes/No type of cross-reference if the information availability of source snapshots for the dialogs. generated by GNAT is not up-to-date. current development version of GNAT - New menu: File->Add Symbols, Cross-references to operators now work (similar to the 3.15 release, but on GCC particularly useful under VxWorks. correctly in all situations. 3, rather than GCC 2). The above public versions are still based on ACT's 2.8.1 - GVD shows the main source file in the Add support for the GNU visual GCC version. explorer when it opens. debugger. This debugger will be used by These versions are provided without any - The fields in the "New Debugger" default if found on the path. See also the variable ada-tight-integration-with-gvd. warranty or guarantee of any kind, and no dialog are now filled with parameters support of any kind is available for these from the command line. Better support for Windows paths. public versions from ACT. They are - A message dialog now pops up when Supported users of Ada Core provided as a service for use by students, trying to detach a process while the Technologies or ACT-Europe do not hobbyists and researchers who need underlying debugger is busy. need to download this version, which has access to a high quality Ada 95 system. - The columns size and visibility for the been available to them for some time. In If you need a supported commercial Ada stack window are now memorized from any case, you should request new 95 compiler, we recommend the use of one session to another. versions or bug fixes through your usual our GNAT Pro product. In particular, we channel. do not recommend the use of the public - Explorer displays return type for version for formal evaluation purposes. functions. ACT - XML/Ada 0.7.1 Contact [email protected] or sales@act- - In addition to GVD_ROOT, the path europe.fr for further details on GNAT where gvd is launched is used to retrieve From: Emmanuel Briot evaluation versions. Date: 21 Jan 2002 11:28:21 +0100 thus be found more easily on Windows Robert Dewar, Ada Core Technologies systems. Subject: [ANNOUNCE] XML/Ada 0.7.1 released GNAT 3.14p New Features List If you are interested in participating in Newsgroups: comp.lang.ada the GVD development, do not hesitate to The following is a list of new features contact us (mailto:[email protected] [See also “ACT – XML/Ada 0.6” in AUJ available in 3.14 as compared with 3.13. europe.fr) 22.4 (December 2001), p.207. – dc] Copyright (c) 2001, Ada Core Technologies Arnaud Charlet A new version of XML/Ada has been made available on http://libre.act- This file contains a complete list of new europe.fr. features in version 3.14p of GNAT. A full description of all GNAT features can

Volume 23, Number 1, March 2002 Ada User Journal News – Ada-related Products 21 be found in the GNAT User Guide and 7215-008 Improve msg for missing 7607-007 Improved control for NT GNAT Reference Manual. [Prepend "NF- WITH of predef unit. The error message temporary files. Under NT, it is now 314-" to all new feature numbers.] handling for cases of forgotten WITH's of possible to control where temporary files 5827-001 New -u switch for gnatmake. predefined library routines is improved. are created. First, the TMP environment The command gnatmake -u only 7314-004 Remove useless initialization variable is checked, and if this is set, it recompiles the main file when needed. checks. Initialization procedures for specifies the directory to be used. If Gnatmake can now be used as the main arrays were doing unnecessary subscript TMP is not set, then c:\temp is used. If and only interface to the compiler since a range checks, that have now been both of these checks fail, then the current single compilation can be launched with suppressed, since an out of range working directory used. "gnatmake -u -f". condition is impossible in this context. 7611-007 Warnings for WITH of internal 6806-001 Source reference pragmas read 7418-008 New switch for gnatchop to GNAT unit. The only units that should by gnatchop. The gnatchop utility now exit on errors. The new -x gnatchop be WITH'ed by application programs are recognizes and respects existing source switch causes gnatchop to exit on those that are documented in the RM or reference pragmas that it finds in the detecting parse errors. Now gnatchop in the GNAT documentation. Any WITH input file, so that the output files always also sets the exit status to indicate errors. of an internal GNAT implementation unit properly reflect the original source file. not documented in one of these two 7506-010 Improve message for access locations now generates a warning. This 6813-011 Asis queries to evaluate static param comparison. A comparison of an warning can be controlled individually by expressions. A new set of queries is access parameter with null is illegal. use of the -gnatwi/-gnatwI switches. It is added to package Asis.Extensions. These This was always caught by GNAT but on by default. queries allows an ASIS application to with a confusing error message that evaluate the value of a discrete static complained about the types of the 7614-005 Avoid use of a-types.h in expressions and to get the low and high operands. Now a specific error mesage is runtime. The use of a-types.h is now bound of a static 'Range attribute. The given pointing out that it is not allowed avoided in building the runtime library. results are returned as string images of for an access parameter to be null in the This reduces unnecessary symbol table expression values, The 'Pos value is first place. and debug information returned for enumeration expressions. 7509-002 Improve warning for possibly 7619-008 Access to source related See specification of Asis.Extensions for null values. The warning for possibly information. A new package more details. null values has been improved to be more GNAT.Source_Info provides some useful 7001-006 Better messages on non-visible precise and to catch some previously utility subprograms that provide access to entities. The warnings for non-visible uncaught cases. source code informations known at entities have been improved to exclude compile time, such as file name, line 7515-007 Multiple Source_Reference number and enclosing entity. implicit entities, and entities declared in pragmas allowed. It is now permitted for the private part of GNAT internal units. a single file to have more than one 7620-002 More flexible source file This results in more helpful error Source_Reference pragma. All pragmas naming. The Source_File_Name pragma messages for undefined variables. must refer to the same original file, but has been enhanced so that it can provide 7008-003 New package GNAT.Sockets. the sections referenced need not be general pattern driven rules for This package provides a high level contiguous. This permits correct constructing file names. The scheme is interface to the sockets API. Most of the processing of files with configuration powerful enough to accomodate all features are implemented. This high level pragmas that are chopped using gnatchop common schemes for deriving file names and portable interface is based on the with the -c and -r switches. from unit name that we are aware of, and in particular it supports standard schemes GNAT.Sockets.Thin API which is a thin 7516-012 Better warning messages for binding to the OS sockets API. used by other Ada 95 compilers. This Storage_Error. In some cases, a warning means that for most purposes the large set 7110-008 New package about possible storage error was posted of Source_File_Name pragmas can be GNAT.Most_Recent_Exception. This on the offending statement in a generic replaced by two pragmas, giving pattern package provides subprograms giving template. Now the message is always on rules for bodies and specs. access to the exception occurrence, or the relevant instantiation with a pointer to exception occurrence access for the most the generic template location. 7622-004 New packages for CGI recently raised exception. Unlike the programming. A new package 7524-009 GNAT version string is in GNAT.CGI provides basic services for routines in GNAT.Current_Exceptions, executable. The executable now contains these routines do not have to be called CGI (Common Gateway Interface) a string identifying the GNAT version in programming. A subsidiary package statically from within an exception the form "GNAT Version: xxx(xxx)" handler. GNAT.CGI.Cookies provides facilities where xxx(xxx) is the version number. for dealing with "cookies" (data kept in 7207-004 Issue error for bad The external name of this constant is Web client software). A third package Source_Reference pragma. The __gnat_version. GNAT.CGI.Debug provides debugging Source_Reference pragma is (and always 7530-009 Consistency checking for - facilities. Between them, these packages has been) required to be the first line of gnatE mode. Units compiled with -gnatE enable an easy interface for Web the file. This is now clearly documented, and without -gnatE can be mixed under programming from Ada. and a diagnostic is issued if the first certain conditions, now properly 7626-013 Automatic backtraces during Source_Reference pragma is not the first documented in the GNAT Users Guide. line in the file. exception handling. A new package The binder now checks that the rules for GNAT.Exception_Traces is now 7207-006 Warn when Duration safe mixing are properly followed. available for platforms on which the unexpectedly used. A new warning has 7606-012 Improve equality ambiguity backtrace features is implemented. This been added when a universal fixed error messages. In the case of ambiguous provides a feature for enabling automatic expression is interpreted as type operands for equality, -gnatf now gives output of backtraces upon exception Standard.Duration. Although this is details on the possible resolutions occurrences. Two options are available, correct according to RM semantics, it is discovered by the compiler, making it enabling traces either for every almost always suspicious and represents easy to diagnose the cause of this error in occurrence or only for occurrences that an unintended meaning. non-obvious situations. are not caught by a user defined handler.

Ada User Journal Volume 23, Number 1, March 2002 22 News – Ada-related Products

The latter is typically useful to get traces multiple arguments, and also allows the to get the stack traceback through a when a task dies because of an unhandled use of ASCII.NUL to separate arguments foreign thread. This is true for unhandled exception. in a single string. exceptions and for GNAT.Traceback 7708-001 New Setenv procedure in 7718-003 New warning option to detect services. GNAT.OS_Lib. A procedure Setenv has hiding. New flags -gnatwh/-gnatWH are 7817-001 GNAT now compatible with been added in GNAT.OS_Lib. This provided to enable/disable checking for Solaris 2.8. GNAT is now fully procedure can be used to add or remove the case where an inner entity hides an compatible with Solaris 2.8. This environment variables for the current and outer one. This is of course legal, but in includes proper building and operation of child process. This is not yet supported some environments such hiding is the florist package (which did need some under VMS, but is fully supported for all discouraged, and this warning option modifications to be 2.8 compatible). other GNAT ports. (which is by default off) can be used to 7820-008 Better 'Valid handling for large 7709-004 New unit GNAT.AWK (AWK enforce this requirement. Note that the subtypes. If an object of a discrete type style file parsing). A new package common case of one character identifiers has a larger size than the base type (e.g. GNAT.AWK (file g-.ads) provides such as I,J,K is excluded from from the use of a component clause in a AWK-like file parsing with an easy consideration. record representation clause), then 'Valid interface for parsing one or more files 7721-002 Improved range analysis for will check all the bits of the object containing formatted data. The file is subtraction. The circuit for range (previously the code simply use part of viewed as a database where each record analysis for subtraction has been the field, which was an allowable is a line and a field is a data element in enhanced. This eliminates some range implementation according to the RM, but this line. checks, and some additional warnings at nevertheless surprising). 7711-001 New function Paren_Count in compile time for cases where the result is 7821-010 ASIS tutorial is available. A GNAT.Regpat. A new function known to be out of range. simple hands-on ASIS tutorial is added to Paren_Count is now provided in 7721-003 Implement range analysis the ASIS distribution. It consists of two GNAT.Regpat to return the maximum 'Length. Range analysis for the Length parts. One part is based on the asistant number of parentheses pairs in the attribute has been added, resulting in tool and the task is to get the initial compiled regular-expression. elimination of some range checks, and experience with using ASIS queries. 7712-005 Support for honoring gcc -fno- also some additional warnings at compile Another part is based on the ASIS common. The -fno-common gcc time for cases where the result is known application templates and the task is to command line option is now recognized. to be out of range implement simple ASIS tools starting The use of this option causes the 7722-016 Improved error msg for name from these templates. For all the tasks allocation of uninitialized global conflict. The error message for a conflict full documented solutions are provided. variables to be moved to the bss section between an enumeration literal and a later 7821-008 ASIS application templates are of the object file, rather than generating declared constant of the same name has available. A set of ASIS application them as common blocks. This solves been improved. templates is added as a part of the ASIS problems caused by the presence of a 7723-005 GLIDE xref works even if distribution. This set contains the Ada symbol both in a library and in an compile errors. The new switch -gnatQ components which are the same or very explicitly linked object file. can be used to force generation of an ALI similar for many ASIS-based tools. 7713-002 Improved error message file even if there are compile errors. This These templates may be used as a "quick placement. The error message noting that is most useful in connection with GLIDE start" for ASIS beginners. only subtype marks can be used in a and similar tools, since it means that 7822-009 Dynamic elaboration checks generic array formal are now more cross-reference information is available improved. Elaboration checks are accurately placed and point specifically even after compiler errors. suppressed for calls to subprograms in to the offending construct. 7723-012 Unreferenced labels generate packages to which a pragma Elaborate 7713-003 Front-end inlining. The -gnatN warnings. In -gnatwu mode, GNAT now applies. The cases of Elaborate_All and switch enables front-end inlining. In this diagnoses labels that are not referenced Elaborate_Body already suppressed the compilation mode, the front-end replaces other than by their initial occurrence. check, but checks were not suppressed for Elaborate. a call to a subprogram that has an Inline 7731-012 New unit pragma by the expanded body of the GNAT.Dynamic_Tables. A new package 7826-009 gnatdll supports binder subprogram, provided the body is short GNAT.Dynamic_Tables provides a arguments. Gnatdll now supports the - enough. This supplements the inlining resizable one-dimensional array. It is bargs parameter passing arguments to the performed by the GCC back-end. similar to GNAT.Table except that the binder. For example, this can be used to 7717-001 Task_Name pragma provided table type is a declared type, so that it can build a DLL with stack tracebacks stored to set task name. A new pragma be used in more general contexts. in the exception occurences (gnatbind -E option). Task_Name can be used in a task 7801-005 Warning for aliased definition to specify the name used for a discriminanted objects. GNAT now 7826-010 pragma Comment restriction task for debugging purposes and by generates a warning for an assignment to removed. The placement of pragma Ada.Task_Identification.Image. The an aliased discriminated object that is Comment is now unrestricted. This argument is the task name, and can be an known to generate a constraint error at pragma can appear anywhere within the expression referencing the task run time. main unit, including as the first line of the discriminants, allowing different names file. 7802-002 GLIDE can go to any file in to be given to different instances of the 7827-011 Control of warnings for address same task type. error message. When an error message from the compiler includes several overlays. The warning switch -gnatwo 7718-001 Linker_Options extensions file:line references, it is now possible to turns on overlay warnings for address now documented. The documentation click on any of them to display the clauses where implict initialization can (GNAT Reference Manual) has been appropriate file, instead of just the first cause the overlaid memory to be enhanced to contain full documentation one. clobbered. The swich -gnatwO turns off of the GNAT implementation of the these warnings. The warnings have been Linker_Options pragma. GNAT allows 7814-013 x86 stack traceback for foreign implemented for a while. What is new is threads. Under x86 targets it is possible

Volume 23, Number 1, March 2002 Ada User Journal News – Ada-related Products 23 allowing them to be selectively turned off used if the type is controlled, if it is 7931-001 Additional in-place (the default is that this warning is classwide, or if the object is declared at assignments for aggregates. Assignments enabled). the library level. of the form: S (1 .. N) := (others => 7829-002 Control over validity checking 7918-012 Enhanced variant of Spawn in Expr); are now performed in place, is provided. GNAT now provides a new GNAT.OS_Lib. In the package without generating a temporary for the switch -gnatVx that allows you to control GNAT.OS_Lib, a new Spawn function aggregate (as long as Expr is independent the level of validity checking. The now returns the exit status of the of S, of course). In addition, array options are n/d/f for none/default/full. executed command as an Integer value. assignments where the right-hand side is None means no checking for invalid data, The existing Spawn procedure only gives an aggregate with only an others clause default (which is the default setting) a boolean result. are performed in place even if the bounds of the array are non-static. provides sufficient checking to meet the 7924-003 Immediate output switch (- requirements of the RM, and full gnate) replaced. The immediate output 7931-002 Improved handling of provides extensive validity checking, switch -gnate is no longer defined, enumeration image tables. The handling particularly useful when used with reflecting the fact that this is intended of enumeration type image tables (for Normalize_Scalars. only for use in diagnostic mode following support of the Value, Image, and Width 7829-003 New warning for hiding loop a compiler crash. In those cases where attributes for enumeration types has been variables. A common mistake for those this is needed, the effect can be obtained improved). The tables are now generated familiar with other languages is to fail to by use of the -gnatdO debug switch. The statically, and are significantly smaller realize that a for loop implicitly declares purpose of this change is to avoid than they were previously (1-4 bytes the loop variable, and programmers accidental use of this switch, which overhead per entry instead of 12-15). provide a useless and unused outer level disables many useful error message 7931-003 NT Win32Ada binding variable definition with the same name. circuits. reformatted for -gnaty. The sources of GNAT now specifically detects this 7925-003 Protected types visible in Win32Ada binding were reformatted to situation and provides an explicit entities menu. In addition to meet the style requirements for compiling warning. subprograms, types and tasks, the entities with the -gnaty switch. 7830-008 ASIS menu in GLIDE now includes an entry 8001-002 The -gnatg switch is now fully Corresponding_Name_Definition_List. for protected objects and types. This is documented. The -gnatg switch is the The also available in the speedbar panel. GNAT internal implementation switch. Asis.Expressions.Corresponding_Name_ 7926-006 Allow SPARK annotations in - It is intended only for use by GNAT Definition_List query in ASIS for GNAT gnatyc mode. The -gnatyc mode now itself. The documentation now fully is now fully implemented. allows comments starting with --x where describes this switch and explains why it 7830-014 New warning for overlay by x is any special character in the lower should not be used by application access type. The warning for possible half of the ASCII range programs. unexpected initialization has been (16#21#..16#2F#,16#3A#..16#3F#). This 8004-004 Unchecked_Conversion now extended to include access types. The in particular allows the --# comments that fully documented. The GNAT Reference warning is generated if an access type has appear as annotations in the Praxis Manual now contains complete an address clause causing overlay, and SPARK language. documentation on the approach used by there is no pragma Import, so that 7929-004 Value_Size and Object_Size GNAT in handling unchecked initialization to null will take place. Note output by -gnatR. The -gnatR switch conversions where the sizes of the source that NF-314-7827-011 gives the now outputs Value_Size and Object_Size and target types are different. capability of controlling such warnings. separately for types where these two 8006-002 Improved output for Note also that GNAT 3.13p had a (now values are different. If the values are the representation information. The -gnatR corrected error) that caused such same, then the output simply lists this switch now takes an optional parameter expected initializations to be omitted. common value as the Size value. which can have the value 0,1,2. No 7906-017 New package 7930-001 Value_Size and Object_Size representation output is generated in - Ada.Interrupts.Signal. A new package for all types. The Value_Size and gnatR0 mode. In -gnatR1 (same as - Ada.Interrupts.Signal (file a-intsig.ads) Object_Size can now be separately gnatR), representation information is has been created to provide an easier and specified for composite types (records generated for arrays and records. For - more portable way of generating Ada95 and arrays). The meaning is as for scalar gnatR2, representation information for all interrupts. types. The Value_Size is used for user declared types and objects is 7910-004 Uniform behavior for Slice unchecked conversion and packing generated. subprograms. In packages purposes, and the Object_Size is used for 8010-003 Detect duplicate Ada.Strings.Bounded/Ada.Strings.Unbou allocation of objects. Value/Object_Size clauses. The nded, the Slice function now returns with 7930-006 New attribute appearence of more than one Value_Size the bounds of the slice expressions, rather Standard'Wchar_T_Size. This attribute or Object_Size clause for a single entity, than with a lower bound of 1. This was returns the size of the C type wchar_t, which was previously allowed (with the discussed in the ISO WG9 ARG, and it which may differ from the Ada earlier one being ignored), is now was agreed that this was the preferable Wide_Character type. The attribute is detected as an error, which seems more approach. This change also improves the primarily intended for the construction of appropriate and more consistent with the efficiency of these two functions. the wchar_t type in Interfaces.C. treatment of duplicate Size clauses. 7914-009 Optimization for object 7930-007 Changed children of System to 8010-005 Spell checking in GLIDE. The declarations. If an object is declared with be pure. Many more packages in the standard ispell command can now be an unconstrained nominal type and the System hierarchy have been marked pure. used to spell check the comments while expression is a function call, it is in This change documents that the functions editing an Ada source file. The checking general necessary to compute the result in those packages are in fact side-effect only applies to comments and not to Ada of the call first and then copy that result free, which gives the compiler more source code other than comments. into the object, after deter- mining the optimization opportunities. 8010-012 More flexible bounds. GNAT now suppresses that GNAT.Threads.Create_Thread. copy in many cases. The copy is still

Ada User Journal Volume 23, Number 1, March 2002 24 News – Ada-related Products

Create_Thread now returns the task id so units in the GNAT, System, Interfaces, used to add the -a switch, in case you that this value is easily known on the and System. This includes several units often work with read-only ALI files. client side. that have been present in GNAT, but not 8105-007 New convention Win32 8012-002 New warning for unexpected previously documented, including equivalent to Stdcall. The convention rounding. Warn in cases where the static System.Address_Image (to convert Win32 is now recognized as equivalent to evaluation rules of Ada as described in Address values to strings) and Stdcall or DLL (all three conventions are RM 4.9(38) result in different rounding Ada.Command_Line.Remove (for identical in effect and considered to be than would have been obtained at logically removing command line conformant). This eases porting of code runtime. This rule is a rather surprising arguments). from other compilers that use this one, and has caused confusion in the past. 8028-002 SIGUSR1/SIGUSR2 now convention name. 8014-002 Additional information on handled in GNU/Linux. Using native 8106-010 New unit unused entities. Warning messages on threads (aka LinuxThreads), it was not Ada.Exceptions.Is_Null_Occurrence. unused entities (generated by compiling possible to handle the SIGUSR1 and This GNAT addition to the Ada hierarchy with -gnatwu) now indicate the kind SIGUSR2 signals. This limitation has allows a program to test if an occurrence (variable, function, etc) of the entity to now been removed. This change affects is the null occurrence (Null_Occurrence) which the warning applies. Cross- all versions of GNAT for GNU/Linux without enerating an exception. This references are now generated when an including Debian GNU/Linux and also capability is not present in the predefined entity appears as a default actual in an Redhat Linux. subprograms in Ada.Exceptions. instantiation. This inhibits warnings if 8030-011 New style-check for exit of 8106-010 Warnings for useless type the entity is not used explicitly elsewhere, named loop. The -gnatye switch now conversions. A warning can be generated and is also used by tools that rely on xref includes checking for missing exit labels. for type conversions of the form a(b) information (e.g. GLIDE). It will now cause a warning to be posted where b is a simple entity name which is 8019-001 Documentation on variant if an exit statement appears which refers of type a (i.e. the conversion has no object size. An extensive section has to a labeled loop but the statement does effect). This warning is normally off but been added to the GNAT Reference not include the label. can be set on by the use of @code{- manual describing how GNAT treats the 8030-014 Improved output from gnatbind gnatwr}. Size attribute when applied to variant -e switch. The output now excludes all 8106-011 Warnings for useless record objects. output for gnat internal units. The assignments. A warning can be 8022-004 Improved documentation for - dependency information for internal units generated for assignments of the form a gnato switch. More extensive is of interest only for implementors, and := a; (i.e. assignments of a variable to documentation is provided for the -gnato tends to be voluminous and useless for itself) which are obviously useless. This switch that enables overflow checking, normal use. A -de debug flag is warning is normally off but can be set on emphasizing that overflow checking is introduced to provide the old behavior for by the use of @code{-gnatwr}. system implementors use. off by default, and explaining the 8108-006 Warnings for accidental hiding rationale behind treating overflow checks 8031-012 More extensive misspelling by child unit. A warning is generated differently from other kinds of range warnings. The error messages for when a child unit in the context of a checks. undefined variables now include parent hides a compilation unit of the 8023-003 Document Size Limit. GNAT additional cases where a suggestion of a same name. For example, Foo.Ada, if it enforces a maximum Size of objects of possible misspelling is provided. This appears in the context of the body of Foo, 2**31-1, which since Size is in bits, message now includes cases where the will hide an occurrence of the predefined corresponds to a size of 256 megabytes. entity is in a with'ed package and has Ada in the same context, which can lead This limit has always been enforced, but explicit qualification. to surprising visibility errors later on. it is now properly documented in the 8031-013 Nested package bodies 8108-004 Better error messages for bad GNAT Reference Manual. included in -gnatR. The output from the - array aggregate. If an array aggregate is 8023-005 Improved documentation for gnatR switch now includes declarations missing elements (e.g. it has the index GNAT.Task_Lock. The documentation that appear in nested package bodies. values 1,2,8,9 and is missing 3 .. 7), the for GNAT.Task_Lock has been enhanced 8031-019 Clear labeling of output in - error messages will now give a full list of to make it clear that calling Lock multiple gnatR output. The output from the - missing values. times from the same task works as gnatR switch now makes it clear whether 8114-002 Named numbers included in - expected for nested use of Lock/Unlock. the unit for which representation gnatwu check. The warning option - 8024-002 C_Pass_By_Copy convention information is listed is a spec or a body. gnatwu (check unreferenced entities) now now standardized. The implementation 8101-005 Alignment warnings for bad includes named numbers, so unreferenced of the C_Pass_By_Copy convention has address clauses. It is the program's named numbers will now also cause been modified to be consistent with the responsibility to ensure that the value in warnings to be generated. agreed specification in AI95-00131, an address clause is consistent with (i.e. 8114-016 Better msg placement for which is part of the official technical a multiple of) the alignment of the object with'ed unit not found. In some cases, corrigendum for Ada 95. For GNAT, the to which it is applied, and in general this the error message for a WITH that modification is that now cannot be checked at compile time. directly or indirectly lead to a file not C_Pass_By_Copy is rejected for any However it is possible to post warnings in found could be placed on a location other *entities other than record types and some cases where the value is known at than the WITH statement. It is now subtypes. Convention C can always be compile time and is clearly wrong, and always placed in the most convenient used instead for other entities (GNAT this is now done. place. used to treat C_Pass_By_Copy as 8104-007 New Glide variable ada-prj- identical to C for other entities). 8116-001 Support for wide char to string gnatfind-switches. This variable can be conversions. The library units 8025-009 Documentation of GNAT customized to change the default System.Wch_Con and System.Wch_Cnv Library Units. The GNAT Reference switches used for gnatfind when you provide a method for converting between Manual now contains complete reference select the menu item "Show All wide characters and the corresponding documentation for all GNAT specific References". For example this can be

Volume 23, Number 1, March 2002 Ada User Journal News – Ada-related Products 25 string representation, using any of the problems even if there are syntactic style documentation section in the users implemented methods for encoding. errors. If the previous behavior of guide). It now accepts the new switches - 8118-003 Backtrace decorators for treating these as errors is desired, the - Pproject, -vPx and -Xname=value. automatic backtraces. gnatwe flag can be used. 8304-001 RPM packages are now GNAT.Exception_Traces now includes a 8218-005 New Elaboration_Checks provided for GNU/Linux. Under backtrace decoration facility, allowing pragma. A new configuration pragma GNU/Linux, GNAT is now provided as customization of the way the set of Elaboration_Checks can be used to select either a compressed tar file as before, or addresses for a backtrace is output. A the RM dynamic model of elaboration or as RPM packages which means that the typical use of this feature is to provide a the GNAT default static model. This installation is simplified on various function that returns the symbolic may be used in gnat.adc for partition versions of GNU/Linux, including information associated with each address, wide application, or within sources for Redhat Linux, and Debian GNU/Linux. as computed by unit by unit control. See also feature NF- 8305-003 Better folding of attributes of GNAT.Traceback.Symbolic. 314-7530-009. objects. The Alignment, Size, First, Last, 8120-006 Improved dead code detection. 8218-009 More efficient memory Length, and Component_Size attributes The warning circuitry for unreachable allocation. The GNAT run-time file a- applied to objects are now treated as code has been improved. Now an IF or raise.c can now easily be recompiled with compile time constants if the value can be CASE statement, all of whose statement lock suppression to improve the determined by the front end. sequence end with some transfer of efficiency of memory allocation and 8317-003 Floating-point range checks control is recognized, and code after such deallocation if certain conditions are met. now catch NaN's. In GNAT, a statement is flagged as dead code with See the comment on NO_LOCK in a- Machine_Overflows is False for floating- an appropriate warning. raise.c itself for details. point types, which means that operations 8127-007 Improved parser error 8220-005 Generic sort packages in such as 0.0/0.0 can generate NaN's. The messages. Some improvements in parser GNAT now Pure. The units RM does not require that NaN's be caught error messages have been made. If "|" is GNAT.Heap_Sort_G (g-hesorg.ads), by subsequent range checks, but it is used in an expression in an inappropriate GNAT.Bubble_Sort_G (g-busorg.ads) certainly convenient if this is the case, manner, the parser suggests that "or" may are now Pure instead of Preelaborate, and GNAT has now been modified so have been intended. If a component is allowing them to be with'ed and that NaN's will always fail any range declared in the visible part of a protected instantiated by Pure clients. check and cause Constraint_Error to be object, the diagnostic reminds that such 8220-006 Automatic float control for raised. components can only be in the private Float Input-Output. Floating-point 8322-016 Program units now part. conversion in Text_IO no longer relies on distinguished by gnatxref. The cross- 8203-008 Default thread library is now the floating-point processor being reference section of the ali file now LinuxThreads. Under the GNU/Linux correctly set. This means that the need distinguishes between generic and non- operating system, the default tasking run for explicit calls to GNAT.Float_Reset is generic units, and between functions, time is now based on the native limited to programs which explicitly use packages and procedures. The gnatxref LinuxThreads library. The alternate FSU Long_Long_Float. This feature is utility has been enhanced to take threads implementation is still available especially helpful on NT, where system advantage of this new information and as an alternative (see file services of all kinds seem to reset the now distinguishes these different kinds of README.TASKING for more details). floating-processor into low precision units in identification of entities. This change applies to all versions of mode. 8323-004 Additional documentation on GNU Linux, including Redhat Linux. 8225-001 Project file capability for elaboration issues. A new section has 8205-001 New package gnatmake. The gnatmake utility is now been added to the users guide, entitled Ada.Characters.Wide_Latin_1. This project file aware, and can be used with "Additional Elaboration Order package provides definitions analogous the new GNAT Project Files (see new Considerations", which discusses the to those in the RM defined package documentation section in the users issue of elaboration ordering Ada.Characters.Latin_1 except that the guide). It now accepts the new switches - requirements that are not dictated by the type of the constants is Wide_Character Pproject, -vPx and -Xname=value. language, but rather arise out of extra- instead of Character. The provision of 8226-007 Better handling of invalid lingual logic requirements of the this package is in accordance with RM enum opnds for Image. The Image program. (A.3(27)). Note: this package has been function for enumeration types yielded 8328-012 Better handling of max size of available for some time, but was not rubbish strings for abnormal and invalid variant record. If a discriminant range is properly documented, so from a formal operands (e.g. created by unchecked wider than it needs to be (e.g. we have a point of view was not available to conversions). A validity check (subject Natural discriminant, which is used as the application programs, but now it is a first to control by the -gnatV switch) is now upper bound of an array whose maximum class citizen which is fully documented. performed so that an exception bound is 10), then GNAT now uses the 8213-003 More flexible placing of (Constraint_Error) is raised for an invalid maximum array bound in computing the address clause. Previously when an operand. maximum size of the record, at least in address clause and Import pragma were 8230-001 Style check option for ordered most simple cases. In any case it is a given for a subprogram, the pragma was subprograms. The -gnatyo switch good idea to use a discriminant range that required to be given first. There is now (ORDERED_SUBPROGRAMS in the reflects the range of actual valid values. no restriction on the ordering. VMS version) activates a style check that 8330-008 End positions of constructs 8214-004 Style violations are now subprogram bodies within a given scope now in ali file. The cross-reference warnings not errors. Style errors (e.g. a package body) must be in information in the ALI file now includes resulting from the use of a pragma alphabetical order. all labels on END lines, and also marks Style_Check or the -gnaty flag are now 8302-004 Project file capability for the end of specs and bodies of tasks, treated as warnings rather than errors, gnatls. The gnatls utility is now project subprograms, packages, protected types, which means that an object file can be aware, and can be used with the new blocks, loops, entries and accept bodies. created if there are no other errors, and GNAT Project Files (see new This information is provided in the output that also the compiler will find semantic from gnatxref.

Ada User Journal Volume 23, Number 1, March 2002 26 News – Ada-related Products

8407-012 Objects and types distinguished semantics of > I can understand the reason for limiting by gnatxref. The cross-reference output PTHREAD_PRIO_PROTECT and ACTs work to Windows NT .A output by gnatxref distinguishes type and PTHREAD_PRIO_INHERIT. The compiler that works "reasonably well" object entities (for example an entity is predefined Ceiling_Locking policy for in W98, XP or Me is never going to be labeled as an "integer type" or "integer pragma Locking_Policy is used to specify used on those platforms for any serious object", rather than simply being PTHREAD_PRIO_PROTECT, and a work. identified as "Type: integer" in both new implementation defined policy, Lee is seriously confused here, ACT's cases). Inheritance_Locking, can be used to work is of course not limited to these 8409-001 Tree output can be forced with specify the use of platforms. Since others may possibly -gnatQ -gnatt. It is now possible to force PTHREAD_PRIO_INHERIT. share the same confusion, I should tree output using a combination of the - 8430-004 Enhanced style checking for perhaps clarify. gnatQ and -gnatt switches (it may also be references. For cases in which there is a For serious work using Ada 95, ACT appropriate to use -gnatq in this context). separate body entity (packages, provides a commercial implementation of This allows the use of ASIS on some subprograms, entries, tasks, protected Ada 95, GNAT Pro, on a very wide range illegal programs, though if the error is types, accept statements, subprogram of platforms including the following (list severe enough to cause a malformed tree, formals), the switch -gnatyr now checks not complete): ASIS may blow up when presented such the casing of the body entity to make sure a tree. that it is the same as that of the spec Native Platforms: Windows 2000, entity. Windows NT, Windows XP, , 8411-002 Boolean types now Solaris, Solaris-x86, AIX, Tru64 distinguished by gnatxref. The cross- 8509-011 New package GNAT.Expect. (formerly Dec Unix), SGI Irix, SCO reference section of the ali file now This package provides a set of Unix, JVM (JGNAT), OpenVMS, distinguishes between boolean types and subprograms similar to what is available HPUX, GNU-Linux (Redhat Linux and other enumeration types, and the gnatxref with the standard Tcl Expect tool, other versions). utility has been enhanced to take allowing you to easily spawn and advantage of this new information and communicate with an external process. Cross-Platforms: x86 Lynx, Power PC now distinguishes these types in the You can use this package to send Lynx, 68k VxWorks, Ultrasparc entity identification information. commands or inputs to the process, and VxWorks, PPC VxWorks, PPC VxWorks AE, Bare board, AAMP (the above with 8412-006 New option for gnatlink for compare the output with some expected regular expression. various hosts, including Solars, NT) (the object list file. The switch -f for gnatlink VxWorks based products are available forces the generation of a separate file 8514-003 Improved error message for directly from Wind River Systems under containing a list of objects for the linker, access discriminants. When declaring a their WinDirect program). even if the threshhold for command line self-referential structure as a limited length is not exceeded. This is useful to record that contains a discriminated High Integrity: GNAT HI-E (no run get around some cases of unexpectedly component that points to the enclosing time), GNAT HI-E (Ravenscar profile), exceeding this limit (e.g. due to system record, a common mistake is to define the VxWorks-Cert. environment issues that reduce the limit). type of the component as having a The above list is not complete, but if you The switch can only be used on targets discriminant with a general access type, are interested in doing serious work in for which linker object list files are rather than as a proper access Ada 95 on any of these systems, or on implemented. In addition the limit for discriminant. This results in an systems not listed here, consult Ada Core generation of such files on Tru Unix accessibility violation (RM 3.10.2 (21)). Technologies directly for information (Alpha) has been reduced to 10_000, The new message indicates that the error ([email protected]) including information since on some systems the previous limit is in the discriminant declaration itself. on how to arrange for free evaluation (30_000) was too high. 8522-001 Solaris programs do not depend systems, including full support. 8412-010 New file routines in on libthread.so. On Solaris, for programs We shortly expect to announce GNAT GNAT.OS_Lib. A new routine has been that do not use tasking, the generated Pro version 3.15, which contains many added into GNAT.OS_Lib to rename a executables no longer depend on new features, including a greatly file. All routines dealing with files now libthread.so so that a link can be extended capability for project have two implementations: one using the successfuly completed without requiring management, and we will also announce String type and one using an address to this library to be present. a completely new powerful integrated specify the filename. This is a general 8526-003 Record'Size evaluated at development environment based on clean up to fix inconsistencies. compile time. In the case where the size GTKAda technology. 8413-005 Stream size now taken from of a record type is specified using a size The public versions are not intended at all first subtype. Previously GNAT was representation attribute clause, the front for serious work, so we not only agree using the size of the base type to end now folds the attribute reference at with Lee here, but we very much determine the number of storage units for compile time. The result is still not a discourage the use of the public version use by stream routines for elementary static expression, but the quality of code of GNAT for serious mission critical types. This is now changed to meet the is improved, and in addition, work, since for one thing we discourage new recommendations of AI-195, which representation clauses (such as the use of unsupported software in such suggest using the size of the first subtype. component clauses) that require values environments. They are intended for GNAT now uses the size of the first and types to be statically known at student and hobbyist use and we provide subtype for this determination. compile time are permitted in additional the most commonly used ports for this 8420-006 New tasking run time under cases as a result of this change. purpose. We also of course provide the Solaris. Under Solaris Sparc, GNAT sources, so we expect to see other now comes with a new tasking run time ACT - Supported Platforms versions of GNAT built (in the past based on posix threads (rts-pthread). volunteers have built ports for DOS, BSD From: [email protected] (Robert Dewar) This run time has the advantage of being Unix, Atari, NEXT, and all sorts of other Date: 3 Feb 2002 06:11:58 -0800 mostly shared across all POSIX machines), and indeed you see threads Subject: Re: ACT announces availability of compliant thread implementations, and starting here already on building for GNAT 3.14p also provides under Solaris 8 the Solaris x86, and AIX. Newsgroups: comp.lang.ada

Volume 23, Number 1, March 2002 Ada User Journal News – Ada-related Products 27

For those interested in working with the Values of public objects (their addresses) Ada-ASSURED ensures consistent GNU project for generating interesting may now be retrieved by using: def coding style, prevents syntax errors while new Free Software, we would mypub := "@MYPUBLIC" The symbol editing, and provides numerous recommend that you get involved with 'mypub' can thereafter (if found) be used productivity features for writing and the development of GNAT version 5 in address expressions. reviewing code. Available for Windows which is now part of the GCC project. The display of memory now assigns the NT, most Unix platforms, and now This version of GNAT works with GCC first 10 values displayed to the debugger Linux, it features WYSIWYG language- 3.x and snapshots are available at symbols DBGRESULTx (where x = sensitive editing, automatic standards .org. 0..9). The values for the symbols may be enforcement, high-quality pretty printing, Robert Dewar, Ada Core Technologies used in subsequent commands. and hypertext browsing in a single package that can be integrated with any If a target program requests input and no Ada compiler. DDC-I - Sun Hosted DACS more input is available the user can send for 80x86/Pentium v.4.7.14 a CTRL-G and a new line, which will act Ada Utilities is a language-sensitive as an EOF to the target program. toolset for quality and standards auditing [From: "DDC-I Online News, December of whole Ada projects. It combines the 2001, Vol. 2 Issue 10. -- dc] The assembler has been extended to power of Ada-ASSURED with tools for URL: http://www.ddci.com/ recognize instructions up to and including auditing, searching, and prettyprinting news_vol2num10.shtml the P4 processor, including MMX and entire Ada projects. XMMX registers. Sun Hosted DACS for 80x86/Pentium The Linux versions of Ada-ASSURED v.4.7.14 Now Available! The target linker may now handle 'split' and Ada-Utilities are currently available segments that stretch over more memory directly from GrammaTech, and will be Part of DDC-I's commitment to our sections. available through Aonix in the first customers is to continue to offering quarter of 2002. improvements and enhancements to our The target linker may now produce its resulting binary file in ELF as an products. With that in mind, we are Rational - Apex Embedded delighted to announce this new release alternative to OMF386. which offers many improvements and If a target program requires input over the 4.0.0 for Sun Solaris to enhancements that we hope will be of serial connection it will now ask for a Motorola M68K Family value to each program using the DACS line at a time, instead of sending all the product line. The following is a list of lines in one chunk. In this way From: "Eddie Glenn" some of the enhancements: synchronous target read is assured, and Subject: Rational Apex Embedded for Error messages have been improved to the loader complies with this. Rational Exec and Tornado 4.0.0 for also contain the nesting line information For more information about this and Sun Solaris to Motorola M68K Family is for errors/warnings detected inside other releases, contact DDC-I. available by FTP generics or inlined routines. Also the To: "Apex Announcements" file to ease automatic positioning to ASSURED and Ada-Utilities where the error or warning were detected. [Extracted from postings on Wed, 19 Dec released for Linux 2001 and Fri, 21 Dec 2001. -- dc] The number of elements in an array aggregate has been increased beyond the From: [email protected] (Kirk [In all Rational' URLs below, substitute 32767 elements limit, so that there now is Macolini) by /apex_cross/releases/sol/m68k virtually no limit. Date: 19 Dec 2001 06:21:08 -0800 and by ftp://ftp.rational.com/public -- dc] The tool version of the compiler is now Subject: Ada-ASSURED and Ada-Utilities recorded in the program library, so the released for Linux Product: Rational Apex Embedded for proper compiler version is reported by Newsgroups: comp.lang.ada Rational Exec (rt) & Tornado (vw) the PLU. GrammaTech announced that it has Version: 4.0.0 Platform: Sun Solaris to Motorola M68K Family URL: The 32 bit target root libraries have an released new versions of its multi- /rt/4.0.0 & /vw/4.0.0 added procedure called Make_Trace that purpose development tools, Ada- takes an optional string parameter and ASSURED and Ada-Utilities, running on This release is pending. Generally which produces a call trace at the place of Linux for the first time. Available (GA) status as it goes through the call in the same format as the trace Ada-ASSURED and Ada-Utilities are the final steps of the manufacturing from an unhandled exception. language-based tools for editing, process. We anticipate that this will be complete within the next 30 days. Once The notation xx..xxxh or xx..xxxH browsing, automatic standards and style this release reaches GA status, it will be (where x is a hex digit) is now allowed as enforcement, code analysis, and code available for shipping. Until then, it is a replacement for 16#xx..xxx#, if transformation. Language-based Ada being provided on this FTP server for surrounded by spaces (or ending the tools understand the rules and structure of immediate access. Follow this link for command line) in most command the Ada programming language, to Rational Apex for Rational Exec and contexts. automate many tasks that most software engineers still perform manually with Tornado download and installation Objects found outside the immediate text-based tools. instructions. [...] /.standard.msgs/ context (in the WITH context) will be install_instructions.html reported found with their full names. Evaluation copies of Ada-ASSURED can be downloaded at: Release Notes and Install Guide are When displaying arrays the individual http://www.grammatech.com/products/ located here: index values can be shown by setting the aa/overview.html [In these URLs, substitute by debugger variable /apex_cross/documents/unix -- dc] DBG_DISPLAY_INDEX to TRUE. If Evaluation copies of Ada-Utilities can be the index values are enumeration values, downloaded at: Rational Apex Exec 4.0.0 Release Note their spellings are shown rather than their http://www.grammatech.com/products/ for Motorola 68K: /Rexec/ values (e.g. FALSE => ...) au/overview.html relnote.4.0.dir/rexec_relnote_68k/

Ada User Journal Volume 23, Number 1, March 2002 28 News – Ada-related Products rexec_release_noteTOC.html in the Linux market, the Ada Resource seeking comments from the Ada /Rexec/relnote.rexec.68k.4.0.ps.Z Association announced today at community on their work. "To move Rational Apex Embedded for Tornado LinuxWorld. First, GrammaTech forward, the GNADE project depends 4.0.0 Release Note for Motorola 68K: released new versions of its Ada entirely on the Ada community's input /VxWorks/relnote.4.0.dir/ development tools to reside on the Linux and energy," Erdmann said. "My vxworks_relnote_68k/ operating system. Second, the GNAT experience with the on-line volunteers in vxworks_release_noteTOC.html Ada Database Environment (GNADE) the past make me feel assured that this /VxWorks/ project leader, Michael Erdmann, queried next stage of developing Ada 95 database relnote.vxworks.68k.4.0.ps.Z the Ada community for comments on its objects will be a success." For more open source common application information and to comment on the programming interface (API) for project, please see the GNADE project's Ada and Linux accessing a database management system home page, http://gnade.sourceforge.net/. with Ada 95 database objects. To read about the newest Ada Database [See also earlier in this AUJ issue. -- dc] Objects, go to New Linux packages on http://gnade.sourceforge.net/ado.html. www.gnuada.org GrammaTech's two multi-purpose development tools, Ada-ASSURED and For more information, please write to or From: Jürgen Pfeifer Ada-Utilities, are now running on the call Ann Brandon, Communications Linux OS for the first time. Both Ada- Director, Ada Resource Assoc., Date: Fri, 7 Dec 2001 22:10:56 +0100 ASSURED and Ada-Utilities are used for [email protected], (802) 728-9947 Subject: New RPMs uploaded developing Ada software, from editing To: "GNAT Discussion List" code to checking compliance with standards and guidelines. The tools Ada and Microsoft automate many of the more tedious tasks http://www.gnuada.org/rpms313p.html that software engineers must hand code Ada Bindings to Windows has new RPM releases: when using simple text processors. For APIs - Release 8 of GNAT-3.13p. This is more information, go to GrammaTech's mainly a fix for the build scripts. No website at http://www.grammatech.com. From: John Walker changes to the binaries and libs. To evaluate, download it at - Version 1.2.4 of gvd. http://www.grammatech.com/products/ Date: Fri, 7 Dec 2001 20:13:05 +0000 aa/download.html Subject: Intel-OA: WinAPI Version 4.1 - First release of the AUnit RPM (thanx Release 2 Upgrade to Rolf Ebert). In other Ada-in-Linux news, Michael Erdmann explained that the GNADE To: [email protected] If you want to author your own RPM project stemmed from his own frustration The following upgrade is released on packages for the ALT distribution, please over having no freely available tool with www.jswalker.demon.co.uk/jswtech.htm note that there is now a short Intro how to which to bind Ada 95 applications with setup the ALT buildsystem. Look at those that are open source for Linux and Ada Binding to Win32 (WinAPI) Version http://www.gnuada.org/alt.html# other systems platforms: MySQL, 4.1 Release 2 Upgrade AUTHORING PostgreSQL, etc. He recruited other It provides support for ImageHlp. Please From: Jürgen Pfeifer interested parties to provide the tools and let me know if you have any problems support packages to integrate seamlessly with it. Date: Sat, 8 Dec 2001 21:58:21 +0100 with Ada 95 in the following manner: [See also same topic in AUJ 21.4 Subject: More RPMs * The source code is independent of the (January 2001), p.234. -- dc] To: "GNAT Discussion List" database control system. * The tool chain provides a migration Communication with Excel I've now uploaded new versions of path from other non-open source adasockets and AWS to products to open source GNADE. From: "Gautier Write-only-address" http://www.gnuada.org/rpms313p.html * The application can use more than one Date: Sat, 01 Dec 2001 07:42:22 +0000 AdaIC Press Release - Ada database at a time. The GNADE Subject: Communication avec Excel (E/S) project originated and remains firmly Newsgroups: fr.comp.lang.ada Expands into Linux Market entrenched in the Ada for GNU/Linux Team. [Extracts translated from French: -- dc] From: [email protected] The community project already provides I'm looking for a way to communicate Date: Thu, 31 Jan 2002 01:19:33 -0500 with Excel. [...] If someone has a small (EST) two ways of working between an application and a Relational Multimedia example? The goal is to read and write Subject: [AdaIC] Press release on Ada & data in an open sheet in Excel. [...] Linux Database System (RMDBS): To: [email protected] * Using Open Database Connectivity From: "Gautier Write-only-address" We have put a press release on the AdaIC (ODBC) and embedded SQL (Structured Query Language); Date: Sun, 09 Dec 2001 20:32:01 +0000 Website concerning a couple of recent Subject: Communication avec Excel (E/S), news items that both related to using * Using native Ada 95 bindings (e.g. Newsgroups: fr.comp.lang.ada Linux. Please see it at MySQL and PostgreSQL). http://www.adaic.org/news/linuxmkt.html Good, I ended up making a mini-library In order to address those situations in DDE (and DDE.Excel) for these URL: http://www.adaic.org/news/ which the ODBC interface cannot be operations. The source code is available linuxmkt.html used, the GNADE team decided to in win_paqs.zip, on the page Ada Expands into Linux Market develop a common API for accessing an http://www.mysunrise.ch/users/gdm/ RMDBS for ODBC and all native gsoft.htm. New York (LinuxWorld) - (Jan. 30, database interfaces. Now that they have 2002) Two independent moves have both written a specification, they are actively recently worked to expand Ada's position

Volume 23, Number 1, March 2002 Ada User Journal News – Ada and Microsoft 29

AIDE - Ada Instant 1) Copy directory \iade from cdrom in On GNAT under Windows z:\my_dir; XP and CE Development Environment 2) In z:\my_dir\setada.bat, modify for Windows ADA_DISK=z: and From: [email protected] (Robert Dewar) ADA_PATH=\my_dir; Date: 3 Feb 2002 06:18:27 -0800 From: "[email protected]" 3) Copy z:\my_dir\*.bat in c:\winnt; Subject: Re: ACT announces availability of GNAT 3.14p Date: Tue, 25 Dec 2001 19:26:47 +0100 4) Copy z:\my_dir\*.lnk to desktop, Newsgroups: comp.lang.ada Subject: Quelques questions... update properties of these .lnk; Newsgroups: fr.comp.lang.ada > So IMO ACT does it well. I believe The installation is finished. there should be no big problems with [Extracts translated from French: -- dc] I plan to make a small GtkAda program using GNAT [3.14p] under XP. Yesterday evening, I polished my "Ada to automate this "enormous task". [...] GNAT Pro version 3.15 works just fine Instant Development Environment" (sic) From: "[email protected]" under XP, and we consider XP to be a Gnat/GVD/GtkAda, always with the aim fully supported target. It may be the case of proposing an instantaneous Date: Sun, 06 Jan 2002 16:25:52 +0100 that 3.14p works fine on XP, we just environment for Ada development on Subject: Lisezmoi et installation AIDE don't know since we have never tried, so Windows NT4/2K/XP, available by a version 0.50 we don't like to make guesses. One simple directory copy from a CD-ROM. Newsgroups: fr.comp.lang.ada person at ACT tried it briefly and it I am more particularly busy with: seemed to work, but that's as far as we A link to allow you to get an idea of have gone. This is just a matter of timing, - the aspect of "immediate installation" AIDE (Ada Instant Development XP was not around when 3.14 was being and from now on, if the copy of the Environment) for Windows... developed, but XP is reasonably repertory is carried out on C:, one does http://ouvaton.org/rochebrune/stephane/ compatible with NT in practice. not even have to touch the computing/ada/aide-presentation-0.50.zip environment variable containing the [See also "ACT - Supported Platforms" AIDE directory; I hope to get some comments... I am also earlier in this AUJ issue. -- dc] looking for a place to put this distribution - on line help (INFO, HTML, etc); > What I would wish, is GNAT for Win on the net. CE, but I also understand the reasons - documentation all in PDF format; why ACT does not support it. - printing under Emacs; AdaGIDE 6.43.1 - Ada GUI The reason is pretty simple, we never had - the integration of GVD; IDE for Windows a potential customer seriously interested - the integration of alibrowse, adadoc; 95/98/NT/... in this target (it is not a hard port to do, and I guess the fact that no volunteer did - a small FAQ for the beginners. From: "Gautier Write-only-address" it yet means there is not much interest in I propose two preconfigured IDEs: the hobbyist arena for this port either). Date: Thu, 24 Jan 2002 17:44:37 +0000 Certainly there are many systems for - AdaGIDE (not to frighten the beginners Subject: AdaGIDE 6.43.1 release (Ada GUI which GNAT could easily be ported if and for those who will remain under IDE for Windows 95/98/NT/...) there is interest (we just heard that the Windows without requiring the power Newsgroups: comp.lang.ada port Jim Hopper is doing for Mac OS/X of Emacs); AdaGIDE 6.43.1 release (Ada GUI IDE is coming along very nicely), and some - Emacs 21.1.1 + Ada mode/Glide 3.13p for Windows 95/98/NT/...) interesting new ports of GNAT Pro will (for the experts and those who work be appearing soon from Ada Core AdaGIDE (the Ada GNAT Integrated amultiplatform). Technologies. Development Environment) is an From: "[email protected]" interface to the GNAT compiler featuring Robert Dewar, Ada Core Technologies a color context-sensitive editor and code Date: Wed, 26 Dec 2001 12:30:30 +0100 reformatter. It runs on Windows 95, 98, File Header Dump Program Subject: Re: Quelques questions...... and Windows NT, ... series. for Windows Newsgroups: fr.comp.lang.ada Main improvements in AdaGIDE 6.43.1 > Brilliant - is there a "beta" version for compared to version 6.26 which comes From: "Sune Falck" consenting guinea-pigs? with GNAT 3.13p: spell-checker, Date: Wed, 6 Feb 2002 20:33:18 +0100 Sure, contact me by email... automatic suggestion of filename on save, support for multiple debuggers, Subject: Re: Intel-OA: Object/executable Moreover I spent yesterday to patch drag-and-drop for files, updated options file contents AdaGIDE so that it does no longer dialog. To: "Aonix List" single environment variable Note that AdaGIDE is again compatible > Is there any place that describes the ADA_ROOT. with Windows 95. AdaGIDE is available at the following web site: contents/layout of .OBJ or .EXE files? The installation procedure is now (extract http://www.usafa.af.mil/dfcs/bios/ I have to compare exectuables and from the README): mcc_html/adagide.html binaries compiled on different # Rapid installation machines. I can look at the HEX Martin (1) & Gautier (2) contents of these files, and note 1) Copy directory \iade from cdrom in 1) http://www.usafa.af.mil/dfcs/ differences in words 4, 5, 6. [...] c:\iade; bios/carlisle.html There is a file header dump program with 2) Copy c:\iade\*.bat in c:\winnt; 2) http://www.mysunrise.ch/ sources at Jerry's Ada on Win32 Page 3) Copy c:\iade\*.lnk to desktop; users/gdm/index.htm#Ada http://users.ncrvnet.nl/gmvdijk/packages. html#FILEINFO The installation is finished. "A PE format file info utility. On # Personalized installation in z:\my_dir Win95/98/NT systems the .exe and .dll

Ada User Journal Volume 23, Number 1, March 2002 30 News – Ada and Microsoft files conform to a Microsoft defined and Reply-To: [email protected] language development environment, to COFF like Portable Executable format. Date: Mon, 26 Nov 2001 23:05:18 +0100 build a program which consists of both The fileinfo utility dumps the most Subject: Nouveaux livres Ada and C sources with the main important information about such a PE To: [email protected] program in C. format file to standard output." [Extracts translated from French: -- dc] [...] For the complete newsletter, go to There is also an utility dumpbin supplied Two new books in French about (or with) http://www.ddci.com/news_vol2num9. with ObjectAda Ada 95 have been published this fall, see: shtml [...] http://www.eyrolles.com/php. From: JC informatique/Ouvrages/liste_ouvrages. Date: Thu, 20 Dec 2001 12:55:28 -0700 References to php3?noeud_id=121200&xd=74a1e0cc3 Subject: Real-Time Industry Updates - Publications 1787ebce80db4341615185b News from DDC-I [From that URL: -- dc] To: A9 Dec2001 Online News DK Springer Publishes "Initiation et auto-formation à la Consolidated Ada Reference programmation informatique", G.Canesi, DDC-I Online News December 2001, Manual R.Suc, Ellipses, November 2001, 288 Vol. 2, Num. 10 A monthly news update pages, French [...] dedicated to DDC-I customers & URL: http://www.springer.de/cgi-bin/ registered subscribers. search_book.pl?isbn=3-540-43038-5 "Ada 95 - Orientation objet, structures de données et algorithmes", P.Gabrini, De This Month: Taft, T.S., and Duff, R.A., AverCom Boeck, September 2001, 672 pages, * New Release - DACS v.4.7.14 Now Corporation, a Titan Company, French [...] Available! Check out the list of Burlington, MA, USA; Brukardt, R.L., enhancements for the latest release of AXE Consultants, Madison, WI, USA; List of French Ada Books the Sun hosted DDC-I Ada Cross Ploedereder, E., University of Stuttgart, Compiler System for Intel Germany (Eds.) From: "Gautier Write-only-address" 80x86/Pentium (DACS-80x86 Consolidated Ada Reference Manual. v.4.7.14)! Date: Fri, 28 Dec 2001 00:58:08 +0000 Language and Standard Libraries. * The Benefit of Frequent, Small Subject: Re: Bouquin International Standard ISO/IEC Meetings. This independent consultant Newsgroups: fr.comp.lang.ada 8652/1995(E) with Technical shares proven examples of a very Corrigendum 1. 2001. XXV, 560 pp. http://www.adalog.fr/biblio1.htm important component in "results Softcover. 3-540-43038-5 oriented" software development This consolidated version of the Ada Information on HOOD methods. Reference Manual enhances the Method * Tech Talk: Displaying Information International Standard ISO/IEC About Ada Library Units in SCORE. 8652:1995(E) for the programming From: "Jean-Pierre Rosen" This technical article describes how the language Ada by incorporating the comand list_unit in SCORE (Safety Technical Corrigendum 1 approved by Date: Tue, 27 Nov 2001 14:06:26 +0100 Critical Object-oriented Real-time ISO in February 2001. The Technical Organization: Adalog Embedded) is used to display Corrigendum 1 lists the individual Subject: Re: UML & Ada information about the Ada compilation changes that need to be made to the text Newsgroups: comp.lang.ada units which have been compiled into a of ISO/IEC 8652:1995(E) to correct > I wish I could find more information program libary. errors, omissions or inconsistencies. The about HOOD [...] enhanced Ada Reference Manual [...] For the complete newsletter, go to presents and updates the International Did you have a look at www.hood- http://www.ddci.com/news_vol2num10.s Standard for Ada in a user-friendly way method.org? If you don't get enough html [...] and thus will replace the former version information from there, you are welcome From: JC as an indispensible working companion to get in touch directly with me. Date: Wed, 30 Jan 2002 15:07:57 -0700 for anybody using Ada professionally or (MST) learning and studying the language DDC-I Online News Subject: Real-Time Industry Updates - systematically. News from DDC-I [See elsewhere in this AUJ issue for To: B9DK Jan 2002 Online News Keywords: Ada, Ada Programming, selected items. -- dc] Programming Languages, Distributed Systems, ReactiveSystems, Real-Time From: JC DDC-I Online News January 2002, Systems, Object-Oriented Programming, Date: Wed, 28 Nov 2001 11:46:11 -0700 Volume 3, Number 1 A monthly news Systems Security, Safety, Software Subject: Real-Time Industry Updates - update dedicated to DDC-I customers & Engineering, Systems Design, News from DDC-I registered subscribers. Exceptions, Compilation To: Z8dk-Nov 2001 Online News This Month: Series: Lecture Notes in Computer * Learning and Remembering: Tell me a Science. Vol. 2219. DDC-I Online News November 2001, Vol. 2, Num. 9 A monthly news update Story! This article offers proven tips Last update: 19.02.2002 [...] dedicated to DDC-I customers & for the software community on using Springer-Verlag Heidelberg, registered subscribers. stories and metaphors to teach patterns and to help developers remember them. Tiergartenstr. 17, D-69121, Heidelberg, This Month: Germany, phone +49 6221 487 0 [...] * Tech Talk: Notes on TADS Interrupt * Agile Methods: What's it All About? Types. This tech note defines three New Books in French An introduction of some hot software methods of implementing interrupts topics including pointers to learn more. using the Tartan Ada Development From: Lionel Draghi * Tech Talk: Explore some examples on System (TADS). how to use SCORE, DDC-I's multi-

Volume 23, Number 1, March 2002 Ada User Journal 32 News – References to Publications

[...] For the complete newsletter, go to learn Ada at the programming level. It Date: 21 Jan 2002 07:09:54 -0800 http://www.ddci.com/news_vol3num1. summarizes some key features of the Ada Subject: Re: I need your experience - shtml [...] language that are essential for getting classification and comparison of started. It is a quick-start book, one that languages Ada Distilled - Online Book enables the experienced programmer to Newsgroups: comp.lang.ada, get into the Ada language quickly and comp.lang.beta, comp.lang.c++, From: Richard Riehle easily. See it at http://www.adaic.org/ comp.lang.clos, comp.lang.cobol docs/distilled/adadistilled.pdf. > I am writing a small report about Date: Mon, 07 Jan 2002 18:35:11 -0800 In a related development, the AdaIC is "Object oriented languages and their Organization: AdaWorks Software now a mirror for the book by John public implementations" for a course in Engineering English, Ada95: The Craft of Object Software Engineering. I am trying to Subject: Ada Distilled -- Announcement Oriented Programming. The book can be classify and compare different OO Newsgroups: comp.lang.ada downloaded and browsed directly from languages. [...] David Botton has recently posted a PDF the AdaIC site. To browse the book, look You should definitely look at "Guidelines version of my little book, Ada Distilled, at http://www.adaic.org/docs/ for Choosing A Computer Language: on the adapower web site. craft/html/contents.htm. Support For The Visionary Organization Ada Distilled is intended as a quick start To see all of the on-line textbooks, look 2nd Edition" by Patricia K. Lawlis entry into Ada for programmers who at [http://www.adaic.org/free/ (http://archive.adaic.com/docs/reports/ already know some other language. It is freebook.html] lawlis/content.htm) not as comprehensive as the excellent Randy Brukardt, Technical co- book by Norm Cohen, but many of my Webmaster Multiple Inheritance in students, in industry and in graduate Ada95 school, have found it to be a good supplement to learning Ada. Ada Success Story in IEEE Software Magazine From: Preben Randhol Anyone who wants to use this book for whatever purposes, commercial training, From: [email protected] (Rod Date: Wed, 6 Feb 2002 18:53:13 +0100 university education, or whatever, is Chapman) Organization: PVV welcome to download it and reprint it, as Date: 8 Jan 2002 03:16:41 -0800 Subject: Re: Multiple inheritance in Ada95 long as they include the credits given Subject: ANNOUNCE: Ada success story in To: "GNAT Discussion List" within the book to the author and other IEEE Software contributors. Newsgroups: comp.lang.ada > Can somebody show me a simple I update the book from time using input Those of you who are interested in Ada example of multiple inheritance in and feedback from those who have been success stories might be interested to see Ada95? using it. I welcome any comments this month's IEEE Software Magazine http://www.adapower.com/rationale/ anyone might have. Ultimately, I hope it (Jan/Feb 2002) at rat95-p2-4.html [The chapter on Object will be a useful book for a wider www.computer.org/software. Oriented Programming from the Ada95 audience. We have an article in this issue Rationale. -- dc] It is my intention to keep the book to "Correctness by Construction: http://www.adapower.com/lang/interface. around 100 pages. Each time I add Developing a Commercial Secure html [Ed Falis explains a method of something, I find it necessary to System" that describes our development programming multiple-inheritance in Ada rearrange other material. There is a little of the MULTOS CA system - a highly to implement Interfaces.] deliberate redundancy here and there, so I secure, distributed, fault tolerant know I can add new material now and Perhaps also of interest: certification authority. A significant http://www.adapower.com/alg/ then without turning it into a proportion of the system is constructed heavyweight volume. mediator.html [Matthew Heaney using Ada95 and SPARK95. [...] describes the Mediator Pattern.] Some of the programs and examples are [See also "UK / Praxis CS - MULTOS in color. If you print it with a color [See also "Multiple Inheritance" in AUJ Certification Authority for Smart Cards" 22.1 (March 2001), p.18. -- dc] printer, you will find that helpful. It further in this AUJ issue. -- dc] includes an annotated version of From: Francois Godme Ada.Text_IO. I plan to continue to Rod Chapman, SPARK Team, Praxis annotate some of the Ada library Critical Systems Date: Wed, 06 Feb 2002 23:17:21 +0100 packages with each revision of the book. From: [email protected] (Rod Subject: Re: Multiple inheritance in Ada95 Hope it is helpful to some of you. Chapman) To: "GNAT Discussion List" Date: 6 Feb 2002 02:10:42 -0800 AdaIC Mirrors of Online Subject: Re: ANNOUNCE: Ada success Wait for Ada 2005 where multiple story in IEEE Software interface inheritance will be introduced. Ada Books Newsgroups: comp.lang.ada As for full multiple inheritance, it never From: "Technical Webmaster" PDF of this article is now available free existed. Full multiple inheritance implies of charge at www.sparkada.com under that the derived class is deriving several Date: Sat, 12 Jan 2002 19:18:58 -0600 "Publications". [...] classes at the same time *and* that the Subject: [AdaIC] A new book by Richard resulting class can be a substitute Riehle is now available Guidelines for Choosing A simultaneously for each class it derives To: Computer Language of. The second part of the sentence is Ada Distilled is a new on-line book by simply not true. Richard Riehle. The book is aimed at From: [email protected] (Ted experienced programmers who want to Dennison)

Volume 23, Number 1, March 2002 Ada User Journal News – Java 33

Organization: Quadrus Corporation up yet. (And for a one-person effort, Java Subject: Re: Ada vs Java performance commercial support isn't an option.) testing... My take on using JGNAT is that if it's Ada and Java Newsgroups: comp.lang.ada something relatively small, or if you're Interoperability > [...] you can import Java classes and willing to be a technology explorer, go Objects into Ada code using it, ahead with it. [...] From: Stephen Leake including Java3D. [...] Has anyone From: "Rob Veenker" done this? Date: 08 Dec 2001 12:48:46 -0500 Organization: NASA Goddard Space Flight Oh yes. I've built a whole GUI based on Date: Fri, 7 Dec 2001 17:15:46 +0100 Center the Swing components, both using and Subject: Re: JGNAT users Subject: Re: Java Bindings extending them, utilizing both classes and Newsgroups: comp.lang.ada Newsgroups: comp.lang.ada interfaces. (JGNAT comes with a pre- I am using the supported version of canned set of bindings for JDK 1.2 and a > Just finished a Java class. Curious as to JGNAT in order to be able to reuse code tool to auto-generate an Ada binding that should run on Windows NT and on a whether or not anyone has written a from any Java class.) [...] binding so that Ada can talk to Java PDA running a JVM. I have implemented and pass data. Marc A. Criley, Senior Staff Engineer, a communications application that Quadrus Corporation, connects ruggedised PDA's to our main Since Java is normally interpreted by the www.quadruscorp.com application. By using JGNAT I only JVM, and Ada is normally compiled to needed to change a few Ada package machine code, it is not possible to have a JGNAT Users bodies specific to the JVM environment normal binding. :-) Nearly all of the problems I found are However, there are several options. If From: "Torben Hoffmann" fixed already in the wavefront version. you want to write Ada code that runs on a My compliments to the ACT people ! Date: Fri, 7 Dec 2001 12:42:42 +0100 JVM, and uses all the Sun-defined Java [On Marc Criley's experiences with the Organization: Motorola classes, just use an Ada compiler that public JGNAT version: -- dc] targets the JVM (JGNAT or ObjectAda Subject: JGNAT users for Java). There are also utilities that let Newsgroups: comp.lang.ada I can't comment on the public version of JGNAT, but I don't feel the supported you call native Ada code from Java/JVM I was wondering if anyone is actually version is that restrictive ;-) I assume this code. using JGNAT and, if so, if they have technology will also become available in made a web-page or some other > If so, what is the URL. the public version. [...] documentation of their deeds. JGNAT: ftp://cs.nyu.edu/pub/gnat/jgnat [See also "Netherlands - JVM on PDA to I am contemplating using JGNAT instead Drive Communications Radio" in AUJ ObjectAda: http://www.aonix.com/ of Java since I am less than satisfied with 22.1 (March 2001), p.19. -- dc] (search for "ObjectAda Java") the software engineering level in Java Native Ada from Java: don't remember, compared to Ada - especially Rob Veenker, Dutch Ministry of Defense, can't find it. maintainability and the ability to return to RNLA/DMKL/C3I/C2 Support Centre From: James Rogers some code after a while and actually "get From: Richard Riehle into to" fast are important issues for me. Date: Sat, 08 Dec 2001 20:08:34 GMT From: "Marc A. Criley" Date: Fri, 07 Dec 2001 09:06:37 -0800 Subject: Re: Java Bindings Organization: AdaWorks Software Newsgroups: comp.lang.ada Date: Fri, 07 Dec 2001 12:40:31 GMT Engineering > Native Ada from Java: don't remember, Organization: Quadrus Corporation Subject: Re: JGNAT users can't find it. Subject: Re: JGNAT users Newsgroups: comp.lang.ada Newsgroups: comp.lang.ada Following the JNI (Java Native Interface) One of our graduate students at Naval rules, you would need to create a C [...] I used JGNAT 1.1p quite heavily for Postgraduate School, a Major in the U.S. program as a wrapper to call the Ada awhile to build the client, GUI-oriented Marine Corps, used JGNAT as part of his library. The C wrapper must be compiled portion of an application. While the Master's Degree thesis to create a GUI as a DLL (WIN32) or Shared Object effort was successful - it runs and works interface to a Computer Aided (Unix, Linux). well - I did have to work around some Prototyping System (CAPS). There was problems and idiosyncracies of JGNAT. one problem with the tasking model in The C wrapper must include the C header the current JGNAT which ACT promise Mind you, I did not have problems with file generated by the javah program based to fix someday. We did a workaround on approach taken by JGNAT to implement upon the Java "wrapper" class defining that. The GUI runs quite well over the things like interfaces and inheriting from the Java view of the method(s) to be JVM. called. Java classes, but I did have some problems with the compiler. A few Since that student graduated, one of our The Java view of interfacing to other months ago in this newsgroup I other professors is using this GUI in his languages is that the other language must characterized JGNAT 1.1p as almost, but class on real-time systems. Eventually, perform all the conversions to Java. Java not quite, production quality. There were another graduate student will take over remains ignorant of other language certain constructs that JGNAT did not the system and enhance it as part of a issues. For instance, there is NO Java handle well, such as (as I recall from last thesis for his/her master's degree in equivalent to Ada's Convention spring) functions returning unconstrained computer science. parameter to the Ada Import statement. arrays. [...] From: "Marc A. Criley" There was nothing show-stopping, but Jim Rogers, Colorado Springs, Colorado you did have to code around such Date: Sat, 08 Dec 2001 21:33:38 GMT USA situations. I was hoping that there would Organization: Quadrus Corporation From: "Marc A. Criley" be a new public release addressing these Subject: Re: JGNAT users problems (I did submit several error Newsgroups: comp.lang.ada Date: Fri, 21 Dec 2001 02:00:51 GMT reports to ACT), but nothing has turned

Ada User Journal Volume 23, Number 1, March 2002 34 News – Java

If the supported version of JGNAT Tom Moran, [email protected] Date: Mon, 10 Dec 2001 10:34:58 +1100 becomes the public version at some point, Subject: FedSat/Ada-95 Metrics Freeware it sounds like the problems I had with it USA / LLNL - National To: [email protected] will no longer be a factor to have to work Ignition Facility Laser [...] Basically, we're at the finishing-up around. I'm very to glad to hear of your stage of development for the Spaceflight positive experience. From: "John P. Woodruff" Avionics Software on FedSat-1, a scientific research minisat being Date: Tue, 4 Dec 2001 16:22:29 -0800 developed on a shoestring budget. For Ada Inside Subject: Re: AdaIC Website revamped my sins, I'm the leader of the on-board To: [email protected] USA / AdaIC - Secondary software team. [...] The AdaIC web site might reasonably For details on FedSat, see Web Site mention the National Ignition Facility http://www.crcss.csiro.au/engin/fsdetail/ laser, under construction at Lawrence From: Randy Brukardt bus.html http://www-ssc.igpp.ucla.edu/ Livermore National Lab: personnel/russell/papers/FEDSAT/ and http://www.llnl.gov/nif/. Date: Tue, 4 Dec 2001 18:06:39 -0600 others. Subject: Re: AdaIC Website revamped Our Integrated Computer Control System Environment (for those interested) is an To: [email protected] is 70% Ada95 (with user interface in Java unsupported version of GNAT running accounting for most of the remainder). [...] The primary site on the open source RTEMS, on an Controls are described at http://www- ancient ERC-32 processor at the glacial (http://www.adaic.org) runs on a lasers.llnl.gov/nif/ICCS/index.html. commercial hosting site, because we (the speed of 8 MHz. It's running 5 different TPPB) wanted connectivity and The software is distributed over some complex experiments (GPS propagation reliability that we couldn't afford to build 350 computers using CORBA. It is Ionosphere research, Star Camera, Ka- ourselves. That limits the use of items roughly half written with about 400 Band Comms/Mail forwarding, High beyond HTML and scripting. KSLOC's presently in hand. Performance Computing Experiment using PGAs, Newcastle Magnetometer), The secondary site We reported early results at SigAda 98 plus communicating with a COTS (http://www.adaic.com) and the archive "A Large Distributed Control System Attitude Control System from Dynacon, site (http://archive.adaic.com) [the Using Ada in Fusion Research" [available Canada. This last only added to the archives contain all of the stuff from the online at http://www.acm.org/ requirements about 1 month ago. old site that we haven't reviewed or sigada/conf/sa98/papers/woodruff.pdf -- updated] run on a yet-to-be-named server dc], and recently presented a collection of The Mass Memory system uses a that's part of a product-in-development papers at the 8th International Conference different memory-map from the rest, too. that may or may not ever see the light of on Accelerator and Large Experimental Addresses 0, 1 are valid, 2 and 3 aren't, 4 day. It's all in Ada, currently based on the Physics Control Systems. and 5 are valid... and of course we have Claw sockets library, and was designed http://icalepcs2001.slac.stanford.edu/ bank-switching issues, only 4 MB of it (8 MB of addresses) is visible at a time. for security and reliability. Thus, it Folks here are succeeding with our doesn't do anything fancy at all, just Much of the hardware was made by SIL milestones, in part because Ada does when it was going bust, so was serves pages and directories. So far, it support our requirements. hasn't failed since the site has been on- incomplete, undocumented, or just plain line. It has occasionally raised an John Woodruff, Lawrence Livermore shoddy. And the "software emulator" of exception (most commonly Use_Error - I National Lab, 925 422 4661 the unfinished system was capable of haven't figured out why), which it just simulating no more than 2.7 secs of real- logs and keeps on running. World-wide - "Ada at time - not enough to complete the boot sequence! Several people have asked me to make Work" Articles on AdaIC the source available, which I may do if I Fortunately, Ada has come to our rescue From: Randy Brukardt on numerous occasions. For example, on get some time to make a version for distribution (I don't want to provide the the Engineering Model using code Date: Tue, 4 Dec 2001 18:47 -0600 executed for the first time, it took less exact configuration of our particular Subject: Re: AdaIC Website revamped server to possible crackers). than 2 hours to deduce a hardware failure To: [email protected] (stuck bit) in the mass-storage memory, Some of the content (including the Ada Ann [Brandon] has posted a variety of whose only symptom was the failure of a Reference Manual and the Ada 95 new "Ada at Work" articles in the last complex remote code-patching function Certified Processors List) are created few years. Some of them are listed in the on untested payload hardware. Had we with Ada programs that generate HTML. "What's New" page on the been programming in C++, we'd still be So, most of the site is running on Ada [www.adaic.com] site (click on the poring over the code trying to find the already. If possible within our budget, "What's New" button), and others can be bug that wasn't there - or examining the we'll do that for new features as well. found through the "What's New" page on new hardware, logic probes in hands. [...] Randy Brukardt, co-webmaster the archive site From: Alan and Carmel Brain (http://archive.adaic.com/whatsnew.html) From: Thomas W Moran . [...] There probably are some newer Date: Thu, 31 Jan 2002 19:20:41 +1100 ones not listed on either of those pages. Subject: Re: derived types Date: Fri, 7 Dec 2001 15:46:38 EST To: [email protected] Subject: Re: AdaIC Website revamped I know Ann is interested in projects using To: [email protected] Ada, so feel free to tell her about them. [...] BTW today was my last day working as leader of the On-Board Software The server started life based on smplsrvr Australia - Spaceflight Development on FedSat (Australia's First (on adapower under "simple Claw web R&D Satellite in 25 years). That's the server"), though of course Randy has Avionics Software on FedSat-1 Microsatellite trouble with Ada - the software works added a great deal of functionality. reliably first time, and the developers are Finding dead links was assisted by From: Alan Brain out of a job till the next project comes (on adapower under "Finder"). along: there's almost no maintenance

Volume 23, Number 1, March 2002 Ada User Journal News – Ada Inside 35 effort compared with the initial half of the 21st century (seriously). From: [email protected] (Rod development. Besides, it's a strategic problem of Chapman) collecting resources for the European Date: 17 Jan 2002 00:49:44 -0800 USA / Lockheed Martin - airframe manufacturers, because it is also Subject: Re: ANNOUNCE: Ada success Joint Strike Fighter (JSF) intended for the European market. [...] story in IEEE Software Aircraft It will probably be one of the most Newsgroups: comp.lang.ada produced planes of its category, low Please see http://www.sparkada.com/ From: "Ann S. Brandon" estimates being more than 3000 copies. downloads/iccc2001.pdf or Taking into account the unit costs and http://www.sparkada.com/downloads/ Date: Fri, 04 Jan 2002 15:18:05 -0500 average volumes in this activity, it is ChapmanSigAda2000.pdf for some Subject: [AdaIC] News release on Ada enormous. Hence the importance of the overview of the MULTOS CA system. contract event for Ada. [...] To: [email protected] USA / Pratt & Whitney - Green Hills Software, Inc., announced UK / Praxis CS - MULTOS Commercial Jet Engine that Lockheed Martin will be using Green Certification Authority for Certified With Aonix Hills' INTEGRITY real-time operating Smart Cards ObjectAda/Raven system (RTOS) and AdaMULTI(r) 2000 software development tools to develop From: [email protected] (Rod URL: http://www.aonix.com/ software for its Joint Strike Fighter (JSF) Chapman) content/news/pr_1.24.02g.html aircraft. Lockheed Martin's design for the Date: 8 Jan 2002 03:16:41 -0800 JSF was selected by the Department of Subject: ANNOUNCE: Ada success story in Press Release: Pratt & Whitney Certifies Defense (DoD) in a $200 billion award, IEEE Software Engine to DO-178B Level-A With the largest in US DoD history. Newsgroups: comp.lang.ada Aonix(r) ObjectAda(r)/Raven [See also "Green Hills Software - [See also "Ada Success Story in IEEE Boulder, Colorado, January 24, 2002. INTEGRITY RTOS and AdaMULTI Software Magazine" earlier in this AUJ Aonix, a member of the Gores SDE Selected for F-35 JSF" in AUJ 22.4 issue. -- dc] Technology Group and a leading provider (December 2001), pp.208-209. -- dc] of Ada 95 software development [...] We have an article in this issue environments and safety critical To read the rest of the press release, "Correctness by Construction: solutions, has announced that Pratt & please look on http://www.adaic.org/ Developing a Commercial Secure Whitney has successfully certified its under "Ada in the News" for "Green Hills System" that describes our development newest commercial jet engine, the AdaMULTI for F-35." [...] of the MULTOS CA system - a highly PW6000, using the ObjectAda(r)/Raven Ann Brandon, Editor and co-Webmaster secure, distributed, fault tolerant run-time system. certification authority. A significant From: Tom Timberlake proportion of the system is constructed The Pratt & Whitney certification was using Ada95 and SPARK95. achieved at software Level-A of RTCA's Date: Fri, 4 Jan 2002 14:32:46 -0800 DO-178B, Software Considerations in Subject: Re: [AdaIC] News release on Ada It's the kind of system where most people Airborne Systems and Equipment contract would not even consider Ada, but we Certification. Certification to DO-178B To: [email protected] found its use to be a significant factor in requires that all COTS software included the success of the project. The final in the product be certified to the same > My understanding is that most of this system achieved 0.04 defects per kloc standard as the core product. code is already written (since there (that's 4 defects in 100,000 lines of code) ObjectAda/Raven meets this standard for were prototypes) and that over 90% of post- delivery, which compares Level-A systems. the code for the JSF is in Ada. favourably with industry norms. Pratt & Whitney incorporated the full This is not correct, at least from the Rod Chapman, SPARK Team, Praxis suite of lifecycle artifacts provided by Boeing perspective. The prototype Critical Systems Aonix within the overall engine-system aircraft (two each from Boeing and software documentation set approved for Lockheed) had basic flight control and From: [email protected] (Rod certification by the Federal Aviation navigation capability, but none of the Chapman) Administration. By utilizing the mission-capable avionics and weapon Date: 8 Jan 2002 09:45:06 -0800 ObjectAda/Raven product and associated delivery suites -- and these capabilities Subject: Re: ANNOUNCE: Ada success documentation, Pratt & Whitney was able represent over 90% of the code. The story in IEEE Software to focus development efforts on its core Boeing plan was to migrate a lot of Ada Newsgroups: comp.lang.ada competency of engine-system software, code from F-22 -- one would presume [In response to "Why would most people while ensuring that the run-time system that Lockheed plans to do the same. not even consider Ada?": -- dc] portion of the product was developed and Tom Timberlake, The Boeing Company, Mainly because it's an industry sector verified by experts in that domain. This Phantom Works Software, P.O. Box (banking) where the benefits of more approach reduced the schedule and 3707, Mail Stop 4A-25, Seattle, WA. rigorous software engineering approaches technical risks associated with the 98124-2207, USA are not that widely recognized. There's program while also reducing From: "[email protected]" also some belief going around that you development cost. can't build large, distributed applications Pratt & Whitney selected the in anything other than C++, Java, Date: Sat, 05 Jan 2002 14:39:28 +0100 ObjectAda/Raven product for use on the CORBA, ObjectWibble## etc. etc. these Subject: Re: [Fwd: Re: [AdaIC] News PW6000 in 1998 following an extensive days... The CA is actually written in a release on Ada contract] evaluation. Aonix was selected for a combination of C++, Ada95, SPARK95, To: [email protected] variety of reasons including the usability C and SQL, and it all fits together very of the tool set and the technical support [Extracts translated from French: -- dc] well. Please read the article for more that they were able to provide, states Bret details. For those who are not familiar with the Lynch, Manager, Real Time and aerospace world, the JSF is the world's Embedded Software for Pratt & Whitney. military aerospace contract of the first

Ada User Journal Volume 23, Number 1, March 2002 36 News – Ada Inside

The main discriminator, however, was From: "Marin David Condic" Australian security clearance. Join one of the safety-critical domain experience of the leading companies in Australia. [...] the company and their ability to meet the Date: Mon, 4 Feb 2002 10:38:41 -0500 From: [email protected] standards required for incorporation into Subject: Re: Ada sighting! Date: Fri, 30 Nov 2001 10:14:07 -0600 a DO-178B Level-A software system. Newsgroups: comp.lang.ada Subject: Merry Christmas Guys and Girls Aonix is the leading supplier of certified Well, the good news is that they're using To: [email protected] (i.e., certifiable) run-time systems for the it. [...] I'm just glad to see another [...] It's been a while since I have come to Ada 83 language and offers the only company building its product with Ada. you Ada gurus with any great certified Ada 95 run-time system. And they cite good reasons for doing so. opportunities, but here I am once again! ObjectAda/Raven is certified to the Marin David Condic, Senior Software This is an ASAP opportunity, [...]. highest certification levels and meets the Engineer, Pace Micro Technology Looking to have this person interview DO-178B Level-A required by the FAA Americas, www.pacemicro.com, next week, and start work in two weeks! for airborne systems. [...] www.mcondic.com Embedded Software development, using Press Contacts: Greg Gicca, Director of URL: http://www.dolphin.fr/ Ada (of course). This person will Product Marketing, medal/gdscompiler/ definitely need a Secret Clearance! And [email protected]; additional gdscompiler_overview.html they will be working on the radar and product information: (858) 457-2700, Subject: gds compiler - the structure tracking part of a missile system! This is [email protected] [...] generator builder a contract opportunity in Huntsville, AL, UK / BAE - Upgraded Main The development platform for array [...] Computer for Tornado generators From: "PlanetRecruit.com" What is GDS Compiler? Date: Mon, 03 Dec 2001 02:48:59 +0000 From: Kees de LezenneCoulander GDS Compiler is dedicated to Subject: ** 1 NEW Jobs from microelectronics for the design of any PlanetRecruit.com (03/12/2001) ** Date: Fri, 25 Jan 2002 13:50:52 -0500 array generator. It has been used since Subject: Ada on Tornado 1987 for our own developments in our Ada Software Engineer To: [email protected] memory, sensor or test parametric My client urgently requires experienced The current issue of the magazine Flight generators teams. Ada Engineers to work in their embedded International (22-28 January 2002) Originally a simple tool to build in an competence centre for the aeronautic and contains a half page article entitled artisanal way memory generators, GDS railway sectors. You will have excellent "RAF's new weapons near Tornado GR4 Compiler is now a complete development Ada Development and Design service start". platform of array generators, which experience, with a knowledge of real- One paragraph states: Last year, BAE allows easy development, distribution time methodologies a distinct advantage. received a contract for an upgraded main and integration in a SoC design of any Contractors will be considered. Belgium. computer (UMC) which Greenhalgh says compiler (memories, MEMS, devices,...). [...] will be fitted to the fleet by September Framework independant solution, GDS From: "Kester, Rush W." 2005. The UMC will be a PowerPC Compiler automates and eases array processor with expansion capability. A generators for which parametrization can Date: Tue, 4 Dec 2001 10:15:17 -0500 change to Ada software will improve provide flexibility, security and Subject: FW: Ada job posting site at GWU long-term supportability, he says. Other productivity. (was Future with Ada) changes To: [email protected] GDS Compiler is developed in Ada to After all the discussion about whether or give access to users to a quality-critical There is still Ada work in the Washington not Ada is used on the JSF, this is and robust language with the strengh of a metro area. Some defense related, some particularly encouraging. Of course, for normalised language available freely on not. NASA/Goddard, the FAA Air anyone subscribing to Jobserve, it should any hardware plateform. Traffic Management, and of course many come as no surprise that Ada is used DoD contracts. If you're interested in extensively on Tornado and Eurofighter. Many functions are available to quickly working in this area, contact me and I'll Nevertheless, is is nice to see it in print in and safely create any array generator. fill you in. I may even be able to find a prestigious magazine. When the generator is ready, GDS you a job through AdaSoft where I work. Compiler automaticaly generates the :-) C.M. de Lezenne Coulander, Aircraft layout view (in GDSII) as well as front Development and Systems Engineering end views. Using the Free User Mode of You don't see many ads in the local B.V., Hoofddorp, The Netherlands GDS Compiler, the structure generators papers. My belief is that many in this can be distributed to end-users with area have found that it's easier to hire France / security and efficienty. [...] someone with application domain Integration - GDS Compiler expertise and have them learn Ada on- Indirect Information on Ada the-job or at one of the area colleges. for Array Generators IMO, It's easy to learn Ada. It's much Usage harder to learn to be a good software From: Brian Rogoff engineer or application domain expert. [Extracts from and translations of job-ads Date: Mon, 04 Feb 2002 04:01:45 GMT and other postings illustrating Ada usage Many of you know of the job posting site Subject: Ada sighting! around the world. -- dc] at GWU Newsgroups: comp.lang.ada http://www.seas.gwu.edu/~adajobs/ From: [email protected] (Peter) [sponsored by ACM SIGAda -- dc]. I happen to work in this area and have Date: 27 Nov 2001 21:56:44 -0800 There have been job postings as recently written similar programs, so this was near Subject: Employment - Urgent ! as 11/30/01. [...] and dear to my heart. [...] Newsgroups: comp.lang.ada From: Colin Paul Gloster http://www.dolphin.fr/medal/gdscompiler Full-time position based in Sydney. I /gdscompiler_overview.html need an experienced Ada programmer to Date: Wed, 5 Dec 2001 11:56:37 +0000 start ASAP. Must have current

Volume 23, Number 1, March 2002 Ada User Journal News – Ada Inside 37

Subject: Re: Future with Ada designer. The target hardware will be a Working within simulation projects for To: [email protected] Radstone PPC4 board. The (Ada) Space-related projects, our client is [...] There is a move in ESTEC to application will decode serial data seeking a Software Engineer with a continue with Ada though. Renumeration coming from a remote processor to background in Electronics. With 1-2 is more based on amount of time with generate the screen layouts and softkeys years industry experience and strong ESA than time with Ada. If you would (and changes to their properties, e.g. text experience of C, C++, Ada, Tcl/Tk, Unix prefer a different salary scale, you could contents), and encode serial data to send and Linux, you will participate in try to become an employee of a company back to the remote processor which will exciting European Space projects for a (quite possibly non-Dutch) but based in essentially only contain information rapidly growing company. Knowledge of an office at ESTEC. [...], e.g. see "A about softkey presses and status flags English and French required. Belgium. Software Standardisation Engineer from the screen hardware. All the PEG [...] (Noordwijk, The Netherlands)" [...]: task is required to do is to display the A Project Manager (Software) appropriate windows or softkeys. [...] "[...] Space research organisation requires Working at the cutting edge of Space software standards engineer to work on From: Lionel Draghi related projects throughout Europe, our replacing old standards with new. client is currently seeking a Project Software Engineering standard ECSS- Date: Fri, 21 Dec 2001 19:17:52 +0100 Manager to be responsible for E40 needs to be tailored to suit different Subject: Nouveau stage development projects co-ordinating a projects. Skills required: Modern To: [email protected] team of 2-10 Software Engineers. With software engineering practices, Software Another very interesting student job at experience of working to ISO standards, standards, practical SW exp, real-time http://www.ada-france.org/DB/ you will have strong experience in areas sys, design methods, cross-compilers stage_list.html such as Unix with C/C++/Ada as well as (GNU), programming in C and Ada. [...]" [The job is in a project to develop two OO analysis and methods. With 3-5 Your guidance in crafting new standards Ada95 cross-compilers for the ESA with years industry experience, you will have may be a good way to go to foster the a runtime based on the Ravenscar profile, excellent communication skills in the adoption of sensible tools in the one using Raven from Aonix and the English language. Belgium. [...] Netherlands. other using the open-source ORK kernel From: "[email protected]" From: "J.P. Kermode" from the university of Madrid). -- dc] From: Joseph P Vlietstra Date: Fri, 11 Jan 2002 08:42:33 +0100 Date: Thu, 13 Dec 2001 13:06:15 -0000 Subject: Your weekly jobscareer.be Subject: McCabe Static Analysis Tool Date: 24 Dec 2001 20:47:53 GMT postman To: [email protected] Organization: Mojave Systems Corporation Ada Software Engineers (junior or Does anybody out there have experience Subject: Re: Ada-ASSURED and Ada- senior) [...] - All of Belgium [...] of the McCabe QA Tool for Ada. [...] We Utilities released for Linux You will be integrated in a strategic are considering a purchase of this tool for Newsgroups: comp.lang.ada project including architectural & detailed SW static analysis and navigation [...] We use use Ada-ASSURED to design, developement of the application, purposes [...] enforce uniform style across a small programming, testing and writing of the Paul Kermode, CAPTEC - Computer development team. It goes slightly design documentation. Applied Techniques Limited, 3 St. deeper than the rule checking provided Education: Civil Engineer, Industrial James's Terrace, Malahide, Co. Dublin, by Rational Apex and the GNAT style Engineer, Graduate in Computer Sciences Ireland, [email protected], checking options. [...] or similar experience. One or two years http://www.captec.ie From: "[email protected]" of experience in software development. From: "PlanetRecruit.com" Knowledge of a programming language Date: Fri, 28 Dec 2001 07:52:18 +0100 preferably Ada 83-95 or C++. Developer Date: Wed, 19 Dec 2001 06:10:29 +0000 Subject: Your weekly jobscareer.be & analyst designer. Teamspirit and good Subject: ** 1 NEW Jobs from postman methology. [...] PlanetRecruit.com (19/12/2001) ** 2 Software Engineers Ada to start From: "[email protected]" Ada Engineers/Project Managers mission in Charleroi, Belgium [...] Date: Fri, 25 Jan 2002 08:52:18 +0100 Consultancy for Information, Real Time From: [email protected] Date: Fri, 4 Jan 2002 17:09:25 +0100 Subject: Your weekly jobscareer.be Embedded Systems and E-Commerce postman domains is recruiting French or Dutch To: [email protected] speaking Ada Engineers to work on > Subjectively, I have more the 2 Software Engineers Ada to start important projects. Technically you will impression that the audience for Ada mission in Wallonia - [...] Belgium have good commercial experience of increases. We are looking for a person to join our Ada, C++, OOAD (UML) and good This is also my impression, but it is Customers Signalization Division in knowledge of Unix and NT. Successful necessary to communicate a lot, because Charleroi. As part of a software team, candidates will also have Degree in as has been said at the last "Journee Ada- you will be responsible for developing Software Engineering (or related France", some give Ada up because they security applications for embedded technical discipline) and excellent think to be the last in the world using it, equipment. Understanding of the communication skills. Belgium. [...] which is really a pity. [...] specifications written by the system team. From: "TAMS Team" Date: Fri, 21 Dec 2001 15:31:10 -0000 Ada83/Ada95. Unity and integration Date: Fri, 11 Jan 2002 06:19:29 +0000 testing. Writing of conception Subject: Help! (Ada/Integrity/PEG) Subject: ** 2 NEW Jobs from Newsgroups: comp.lang.ada documents. Support of the Systems team PlanetRecruit.com (11/01/2002) ** with functional testing. We're just about to start our project using A Software Engineer Integrity/AdaMulti to code the main part You are a Civil or Industrial Engineer of the application, with PEG as our GUI Software Designer / Developer. You have a first relevant experience with Ada

Ada User Journal Volume 23, Number 1, March 2002 38 News – Ada Inside

Development. Practical experience with communication skills in English. You which supposedly stifle one's creativity, software conception. Knowledge and have a real team player attitude, you are and result in unacceptable syntactic experience with Ada Language open-minded and naturally curious for overhead (i.e. verbiage) in the 0.1% of (especially Ada95) is a must. Knowledge new technologies. Place of work: cases when one needs to do something and Experience with UML. Good Brussels. [...] unsafe. command of French, English and Dutch. From: Niklas Holsti But it turns out that survival with C++ Good technical background. Team Date: Sun, 3 Feb 2002 10:22:18 +0200 depends on a system of conventions, worker. Well organised and rigorous. Subject: Re: derived types which are outside the language and must Dynamic and creative. [...] To: [email protected] be developed and written about by gurus Developper Ada [...] - Brussels, Belgium [On the use of type derivation in Ada: -- in books, and which have to be enforced, [...] dc] not by a compiler but by a human being (this being both error prone and a human Analysis of request of software incidents. In a software tool we are developing (for Production of detail design and software resource drain). I.e., the conventions static worst-case execution-time analysis) become draconian rules! incidents. Configuration management. I count some 60 derivations of new Detailed design documentation. untagged types, many from predefined Since we have to have rules, I'd a lot Participation in the validation of design, types like Natural or Positive. The reason rather have them be language rules its performance and reliability. Test for using derived types in most cases is to enforced by a compiler than ad hoc plans and specifications. Participation in enforce strong type checks for indices provincial rules enforced by a project coordination and process and counters where we have no a priori "conventions czar". meetings. reason to set a specific range (as in "type At least two years of experience in the T is range 1 .. 100"). Another reason is to The Beaujolais Effect development of application software. override the predefined stream I/O Revisited Experience in software development in attributes (Read, Write etc.) with Unix environment. Programming procedures that apply specific lay-outs, From: Christoph & Ursula Grein Shell and Oracle. Experience in the accumulating a check-sum of the bytes Date: Mon, 28 Jan 2002 20:31:07 +0100 development and support of mission read or written. Subject: Beaujolais To: [email protected] critical applications. Ability to work in In other applications, I have used type an international environment. Good derivation of record types to enjoy the Allegedly John Goodenough long ago in knowledge of French or Dutch. [...] automatic lay-out conversion that occurs the good old Ada83 (or even pre-83) days From: Leslie Green on conversion between related record presented the first example of Beaujolais types with different record representation effect (but I understand Jean Ichbiah Date: Thu, 31 Jan 2002 11:49:23 -0700 clauses. never paid the bottle of ). Subject: Looking for Ada developer/tester So I have found derived types useful even Does anybody still have a copy of this in Colorado in the non-tagged case. contrived example? Are there still To: [email protected] Beaujolais effects in Ada95? Niklas Holsti, Space Systems Finland [...] I am looking for an Ada software/test Ltd. From: Ben Brosgol engineer for a full-time position in Date: Tue, 29 Jan 2002 13:56:27 -0500 Colorado. [...] The work involves Subject: Re: Beaujolais conducting software unit testing on a Ada in Context To: [email protected] local launch vehicle. Any candidates with Ada programming experience or I forwarded the question to JDI, and he IPL's AdaTEST testing tool experience Book Recommendation responded: will be considered. From: "Mark Lundquist" < Roubine found the counterexample and Engineering or equivalent. Complete Date: Wed, 28 Nov 2001 18:12:38 GMT he did get his bottle.>> understanding of the software life cycle Subject: WAS Re: Pre-Elaboration From: Colin Paul Gloster development process. Minimum of 2 clarification. years development in Ada or experience Newsgroups: comp.lang.ada Date: Wed, 30 Jan 2002 10:12:58 +0000 with AdaTest testing software. [...] Sorry, this isn't about elaboration or Subject: Re: Beaujolais From: "[email protected]" anything, but I couldn't think of a good, To: [email protected] non-inflammatory, i.e. non-C++-bashing [...] An example is given on Date: Fri, 01 Feb 2002 08:28:36 +0100 :-) subject line for this... [Nor could I. -- http://www.Informatik.Uni-Stuttgart.De/ Subject: Your weekly jobscareer.be dc] ifi/ps/AdaBasis/pal_1195/ada/ajpo/ postman Matthew Heaney standards/95lsn/LSN1037.PrefRules Ada Software Development Engineers in wrote The page (not the origin of the example) Aeronautics - [...] Brussels, Belgium > You can read John Lakos' Large Scale is attributed to Bob Duff in the year [...] looking for Senior Ada software C++ Software Design for ideas that 1992: developers to participate to the apply to either C++ or Ada95. "[..] Here is an example of an Ada 83 development of IT technical applications I recommend this book to anyone Beaujolais effect. A Beaujolais effect is in the air traffic management. considering Ada, to read as part of a a case where adding or subtracting a Preferably university degree or comparative language study. For one, it's use_clause can cause a change from one equivalent experience. At least 3 years of a good book. This is really how you have legal interpretation to another. professional experience in Ada software to live in C++. But the reasons why are package P is development is mandatory. Knowledge oh-so-illustrative. procedure Q(B: Boolean); -- Q#1 of UML, Corba, Rational Rose, Unix, HP One of the dings you hear against Ada is end P; Openview and/or NT is an asset. that it's full of all these confining *rules*, Possessing good verbal and written with P;

Volume 23, Number 1, March 2002 Ada User Journal News – Ada in Context 39

procedure Main is due to the addition or removal of a Date: Tue, 8 Jan 2002 12:48:44 -0000 function "<"(X, Y: Integer) return use_clause (the so called Beaujolais Subject: Re: ANNOUNCE: Ada success Integer; effect). [..]" story in IEEE Software procedure Q(I: Integer) is ... -- Q#2 http://www.FAQs.org/faqs/computer- Newsgroups: comp.lang.ada begin lang/Ada/programming/part3/ [See also "UK / Praxis CS - MULTOS Q(1 < 2); Tucker Taft: Certification Authority for Smart Cards" end Main; earlier in this AUJ issue. -- dc] As written, the call to Q unambiguously "[..] The existing cases in Ada 83 had to do with implicit conversion of > It's the kind of system where most resolves to Q#2 -- the user-defined "<" people would not even consider Ada, operator is used, and the numeric literals expressions of a universal type to a non- universal type. The rules in Ada 9X are but we found its use to be a significant are implicitly converted to type Integer. factor in the success of the project. However, adding the use_clause "use P;" subtly different, making any case that used to result in a Beaujolais effect in The final system achieved 0.04 defects to Main causes it to unambiguously per kloc (that's 4 defects in 100,000 resolve to Q#1 (in Ada 83) -- the Ada 83, illegal (due to ambiguity) in Ada 9X. [..]" lines of code) post-delivery, which predefined "<" operator of compares favourably with industry universal_integer is used, and the Jean D. Ichbiah: norms. numeric literals are NOT converted. That's because there is a legal "It is worth pointing that many popular [And in response to: I'm not sure I follow interpretation of the complete context languages have Beaujolais effect: e.g. the this. If this result is the industry norm, without implicit conversions, so implicit Borland Pascal "uses" clause, which takes and most of industry doesn't use Ada, conversion is not done. This is the an additive, layer-after-layer, then why do you think Ada was "a Beaujolais effect. interpretation of what you see in the used significant factor in the success of the packages (units) definitely exhibits a project"?] In Ada 9X, adding the use_clause causes Beaujolais effect. the call to Q to become ambiguous. Need to re-read the original post :-) Last time I looked at C++, my impression That's because the two interpretations do He said it "compares favourably with not "differ only in that..." as required was that several years of Beaujolais vintage productions would be required. industry norms" not "matches the above. industry norms". For component-based software These Beaujolais examples are From: Ted Dennison admittedly pathological. Nonetheless, it development, such effects are undesirable since your application may stop working is a nice side-effect of the new rule that Date: Tue, 08 Jan 2002 14:20:50 GMT they are eliminated." when you recompile it with the new -- supposedly improved -- version of a Subject: Re: ANNOUNCE: Ada success A comment on how Beaujolais could component." story in IEEE Software arise, by Bob Crispen on Newsgroups: comp.lang.ada http://www.web3d.org/www- Another Ada Porting I suspect that may have been a bit of that vrml/hypermail/1998/9807/0532.html: Experience famous British understatement too. I "[..] There was once "Beaujolais case" -- think our last (non safety-critical) Ada a particular combination of USE clauses From: [email protected] project would have had a defect count and variables and packages and Date: Thu, 13 Dec 2001 14:45:19 -0500 orders of magnitude higher than that. subprograms with the same name defined To: [email protected] From: [email protected] (Larry both locally and in the USEd packages > If I used to compile an Ada-built Kilgallen) (etc.) such that a spec-compliant compiler system using PowerAda, and want to Date: 9 Jan 2002 15:28:50 -0600 couldn't determine whether to access the change to GNAT, can there be Organization: LJK Software local variable or the one in the other problems? What sort of problems and Subject: Re: ANNOUNCE: Ada success package. [..] can I do something to prevent them? Its story in IEEE Software I remember seeing the example several a very big system...... Newsgroups: comp.lang.ada years ago after the bet had expired, and I experimented with porting a system > I recall seeing the "industry norm" the code that invoked this spec bug (the comprising 20,000 files, millions of given as 1 defect per kloc. only one like that ever found) looked like SLOC, from Apex Solaris to GNAT I suppose it depends on what industry. I it was written by somebody with a Solaris. Took less than 80 hours to get serious drug problem. [..]" have seen numbers of 10 and 5 defects everything to compile and link. Almost per kloc on brand new code and Christoph Grein: "Are there still all of these changes were due to non- modification of code, not specific to Ada. Beaujolais effects in Ada95?" portable Apex-specific features that had From: "Pat Rogers" Hopefully not. been used. On several occasions, a compiler bug got in the way. In all but http://www.Ada-auth.org/~acats/arm- one of these cases, the bug was fixed in a Date: Wed, 09 Jan 2002 21:46:29 GMT html/AA-8-6.html: new compiler provided by FTP within 24 Subject: Re: ANNOUNCE: Ada success hours. In that one case, we figured out a story in IEEE Software "[..] {incompatibilities with Ada 83} Newsgroups: comp.lang.ada {Beaujolais effect [partial]} The new way to re-organize the code to avoid the preference rule for operators of root bug. [...] In a study described in a paper published numeric types is upward incompatible, [See also "Porting from Ada 83 to Ada in 1986, Herbert and Myron Hecht found but only in cases that involved Beaujolais 95" in AUJ 22.3 (September 2001), that for each million lines of code, 20,000 effects in Ada 83. Such cases are p.164. -- dc] bugs existed. Normally 90% would be ambiguous in Ada 95. [..] found by testing. Another 200 would be On Defect Rates and found during the first year of operation {Beaujolais effect [partial]} It is the by users, leaving 1,800 undetected bugs. intent that the Ada 95 preference rule for Industry Norms Regular maintenance would fix 200 bugs, root numeric operators is more locally but also introduce 200 new ones. enforceable than that of RM83-4.6(15). It From: "Martin Dowie" should also eliminate interpretation shifts

Ada User Journal Volume 23, Number 1, March 2002 40 News – Ada in Context

Things have probably progressed *a that is more secure by default," he said. our internal users. Having been an little* since then, but not much; certainly [...] ACTer, the main difference is that we not orders of magnitude. Too, that's just have a team 80% composed of young one study (of several large systems), but Ada and Extreme people with no formal software the magnitude is astounding. (Both Programming (XP) background (mainly financial individuals are extremely well respected mathematics) all working in a in the software fault tolerance field.) From: Terry Westley 300KSLOC software project - hopefully The paper is: H. Hecht and M. Hecht, Date: Fri, 7 Dec 2001 16:19:09 -0500 not as structurally complex as GNAT, "Software Reliability In The Systems Subject: ada and extreme programming many thanks to Ada and GNAT error Context," IEEE Transactions On To: [email protected] messages! Also we're more in the 48 Software Engineering, vol. 12, no. 1, pp. seconds support business than the 48 Anyone have any testimonials on use of hours one due to our activity :). 51-58, 1986. Extreme Programming in Ada projects? [And from a later message:] We have no unit testing, but our Extreme Programming [...] has regression testing technology is quite > And how can any study detect 1,800 requirements (user stories), testing (both advanced, so this compensates in bugs that neither the testers nor the unit and acceptance), and documents. [...] practice. Any change, new feature and users can detect? can be learned about at bug fix, must have a regression test when . it is commited. The users eventually detected them. There is a short introduction there and Patrick Rogers, references to lots of books. We do follow in practice a lot of what is http://www.classwide.com, (281)648- advocated in the XP books, at least what I From: Ed Falis qualify as plain common sense :). 3165 Date: Fri, 7 Dec 2001 17:18:59 -0500 Subject: Re: ada and extreme programming From: Corey Minyard Reducing Security Risk To: [email protected] Requires Better Software Date: Fri, 7 Dec 2001 16:40:46 -0600 I haven't done formal XP. I have used Subject: Re: ada and extreme programming URL: http://itmanagement.earthweb.com/ "test-first" design on a smallish (8K To: [email protected] semicolons) personal project, and on secu/article/0,,11953_953891,00.html XP has a well specified method of Subject: Earthweb IT Management: implementing HW interrupt handling for GNAT on VxWorks. The resulting unit handling requirements, and testing is the Security: Steep Rise In 'Net Viruses, backbone of how XP works. Software Security Flaws test suites, even if incomplete, are invaluable. Documentation is not considered as part [...] by Thor Olavsrud; 01/14/2002 of the XP process, you can do As far as pair programming goes, I only documentation however you like. [Check URL above for complete article. - have informal experience, but have - dc] generally found it useful. With that said, I've been involved in one XP project (in Java, not Ada, although The number of viruses and other types of Constant integration and regression runs attacks making rounds on the Internet, the language shouldn't really matter). It are also invaluable - ACT has had this bit didn't turn out well, but there were some and the number of security vulnerabilities implemented on a nightly basis for years. discovered in software, climbed bad personality conflicts, so it's hard to The result, in terms of being able to say if any design process could have dramatically in 2001, according to newly respond to customer requirements, is issued statistics by the Computer succeeded. The theory is intriguing, beyond anything I've seen in 25 years in since it more or less just goes with reality Emergency Response Team Coordination the sw business. Center (CERT/CC). and doesn't assume that you can do things So, even if not taken as gospel, many of you really can't do, but it has yet to be CERT's statistics, issued Friday, the elements of XP have proven to be proven out. indicated that the number of incidents very valuable practices, and they do From: Laurent Guerby rocketed from 21,756 reported in 2000 to appear to reinforce each other as claimed. 52,658 reported in 2001. For How they scale to larger efforts is Date: Fri, 7 Dec 2001 23:58:48 +0100 comparison's sake, CERT said there were unanswered at the moment. 9,859 reports in 1999, 3,734 in 1998 and Subject: Re: ada and extreme programming six in 1988. To be clear, an incident may AUnit, which supports unit testing as To: [email protected] involve one site or thousands and may advocated in XP, is available at The XP books are quite weak on the topic take place over a long period of time. http://www.libre.act-europe.fr/ . A new [of personality conflicts] IIRC. They all release was put up just a few days ago. assume you have an almighty manager to "The increase [in incidents] we can [See also "ACT - AUnit 1.01 - xUnit Test basically attribute to an increased start with and people coming to form the Framework for Ada" earlier in this AUJ team out of random. sensitivity and an increased awareness as issue. -- dc] to what constitutes an incident," said Our team manages recruting all by itself, Chad Dougherty, Internet security analyst From: Laurent Guerby candidates see at least 3 people, up to five at CERT. [...] he also noted, "It really or more if it looks good, no one goes in drives home the point that sites need to Date: Fri, 7 Dec 2001 23:38:17 +0100 the team if anyone having seen the be aware of patches that are available Subject: Re: ada and extreme programming candidate has a doubt. This greatly from their vendors." [...] To: [email protected] minimizes chances of personality But that's just one aspect of decreasing > Constant integration and regression conflict. Common sense I'd say but looks risk. As the number of patches needed to runs are also invaluable [...] quite rare (I'm no old-timer though). [...] keep a system secure continue to climb, Same experience in the BNP Paribas Dougherty said it may be time to look for Equity Derivative Research Team [in On Languages and software with fewer vulnerabilities. France -- dc]. We do constant Productivity "One piece of the puzzle for reducing risk integreation and regression runs as well. Our software is critical to our business, From: Steven T Abell is to have software with fewer vulnerabilities out of the box -- software and our responsiveness and professionalism is highly appreciated by Date: Sat, 12 Jan 2002 00:38:02 GMT

Volume 23, Number 1, March 2002 Ada User Journal News – Ada in Context 41

Organization: brising.com Short-term Gains and Long- Newsgroups: comp.lang.lisp, Subject: Re: True faiths comp.lang.ada, comp.lang.eiffel, Newsgroups: comp.lang.lisp, term Views comp.lang.smalltalk comp.lang.ada, comp.lang.eiffel, From: Preben Randhol [In response to "The market isn't rational comp.lang.smalltalk and logical". -- dc] > Lisp, Ada, Eiffel and Smalltalk are all Date: Sat, 12 Jan 2002 15:58:51 +0000 Exactly, the market is made up of armies excellent languages, far superior to the Organization: Norwegian university of of individuals that behave according to Gang of Three (Java, C++, C). science and technology their own small views of the world. If Not very many people can use these Subject: Re: True faiths enough individuals fall for a myth about languages well. It's true that two or three Newsgroups: comp.lang.lisp, something being smart and cool, then that people who can use them well can comp.lang.ada, comp.lang.eiffel, will be the markets collected reaction as outproduce a whole roomful of very comp.lang.smalltalk well. competent C/C++/Java guys. But a [In response to the claim that only [About a shift in the near future from the manager is highly influenced by the substantial reasons can have marginalized short-term gain view to a long-term view. Truck Effect: if one of your exotic excellent languages. -- dc] -- dc] wonderboys goes away for any reason, he This implies that the market is rational Unfortunately, I do not share that can be very hard to replace. Furthermore, and logical. It has shown time and time the loss of one of these is equivalent to optimism. To survive in the market place, again that it isn't. The market won't it is good enough that you do not do any the loss of a whole team of C/C++/Java choose a superior technical solution over guys. Yes, I know the time/cost tradeoffs, worse than your competitors in certain an inferior yet better marketed or areas and then you can be better in some but most managers don't want to hear the seemingly cheaper solution. facts on this issue, they just want to know other areas. So using C as an application if they can hire someone off the street, Capitalism will need to adjust itself in the language will not [hurt] a business if the and street people don't do Smalltalk. near future from the short-term gain view competitors do the same. Of course using to a long-term view. This includes taking something better than C will increase the I'm doing C++ right now, and I'm into account security and maintainability advantages of that business, but it isn't a painfully aware of just how unproductive over time. In all sectors we see that the requirement. this thing is. But my client believes that I drive to cut costs leads to problems with can be replaced if I go splat, and that So as long as enough people believe the security; secure food, transport, something, and the market will provide a belief helps them get through the day. utilities, software etc... There now seems Underneath it all, my work is informed selfsustainable weight to a belief once it to come articles that looks at the cost of is there, it will not be working against by my Smalltalk and Lisp experience in software bugs for bussinesses. ways that your average C/C++/Java guy you, even if it is downright wrong. just doesn't get, and my client It is just as frustrating every time I hear A real bummer for payrollers such as understands that I know something they about some company that makes some myself that needs to depend on don't. kind of "secure" solution and when you management seeing through the myths to ask them what language they use they say be able to work with Lisp, but certainly I would love to be able to do Smalltalk all C or C++. When one then ask them why day long. I would hate to go through life also a great opportunity for the they use such an unsafe language they entrepreneur with a good idea and an with the outlook of a C guy. It's hard, but start arguing not that C/C++ is safe, they I try to be content, and I go home and understanding of what Lisp can do for mostly agree that it isn't, but out of him. [Or Ada...] work on learning APL. For those of us economical concerns or that they need who actually have to produce things, it's people that can program and people know In the land of the blind, the one-eyed is what you feed your brain that's relevant, C/C++. king. and C and its children are not enough. From: Preben Randhol On Languages and Finding From: vputz@bgp01364175bgs. sandia01.nm.comcast.net (Victor B. Date: Sun, 13 Jan 2002 19:05:16 +0000 Programmers Putz) Organization: Norwegian university of Date: Sat, 12 Jan 2002 02:31:10 GMT science and technology From: Erik Naggum Subject: Re: True faiths Subject: Re: True faiths Newsgroups: Date: Sun, 13 Jan 2002 18:52:43 GMT Newsgroups: comp.lang.lisp, comp.lang.ada Organization: Naggum Software, Oslo, comp.lang.ada, comp.lang.eiffel, Norway comp.lang.smalltalk [In response to "Why would the market Subject: Re: True faiths not be rational and logical?" -- dc] If you can find the right group of folks Newsgroups: comp.lang.lisp, who are all interested in improving their Well look at the history and the present comp.lang.ada, comp.lang.eiffel, productivity with marginal languages, and you'll see this. Were is the rationality comp.lang.smalltalk you can always try and work outside the to start using say C/C++ for critical > There is, of course, the economic "C Block" and do an end-run around systems? reason that, for example, C/C++ guys slower-moving organizations. [...] I'm trying to point out that C++ and are two a penny but Eiffel and It is a Great Mistake to assume that, C are chosen not from the point of Smalltalk guys aren't. because a programming language has making the most secure software, but for This is one of the most misleading abuses been overlooked by the majority, it is the *belief* that it will be cutting costs. of statistics around. Just because the therefore not worth pursuing in a niche. The customers are sadly not knowledged probability that you hit a C++ Sure, there's a great draw to simply or critical enough to demand something programmer if you throw a rock into a throwing up one's hands and saying "ah, better. [...] crowd is very high, does not mean that what the heck, everyone else is using From: Christian Lynbech the probability that he can replace _your_ C++"... and that is a choice of safety over C++ programmer is any higher than all else. Not a bad choice, but perhaps Date: Wed, 16 Jan 2002 13:00:41 +0100 finding a replacement Eiffel or Smalltalk not the best choice. Organization: ericsson programmer. Because you have to weed Subject: Re: True faiths through tons of idiots who only _claim_ they know C++, the effort required to

Ada User Journal Volume 23, Number 1, March 2002 42 News – Ada in Context find a real replacement may be useful level within a few days by standards and language specifications in significantly lower for Eiffel or competent programmers. But I guess it's general tend to be very poor among C++ Smalltalk. Besides, if you can find a less effort for recruiters to concentrate on users. good programmer, chances are very good buzzwords than to assess candidates in There is a lot of literature written by that he will be able to learn any more depth. idiots and for idiots, purportedly about programming language you use A friend of mine who was involved in C++, but really about a simplified dialect reasonably well in the time it would take hiring told me a story about this. Two having little to do with C++. The to find a good C++ programmer. And candidates were offered jobs. The first literature about languages which are not learning from the sources of the previous had all the buzzwords and impressed the hyped up tends to be of a much higher programmer is a lot easier than learning senior manager. My friend was sceptical quality. The result is that if your typical the language from scratch in a general, but the senior manager won on that C++ programmer comes across a application-independent way. occasion. The second candidate had no textbook about some programming I have actually witnessed this. A buzzwords but exuded competence. The language (like say one of the ones in the company I worked for got a new manager senior manager was not impressed but Newsgroups: line) that language seems level that was completely superfluous, so my friend was. This time my friend won. incredibly difficult compared to the the new manager had to prove to herself The first candidate was hopelesly out of simplified language that he that she had a real job, and spent a lot of his depth and left within a week. The misunderstands C++ to be. time arguing against using languages that second candidate turned out to be one of He doesn't understand that half of his were not mainstream, and basically made their star programmers. code is not even portable to the compiler it hard to use anything but Java, and [On managers arguing against using he developed it with, but works only by many good people quit. Then a Java man fluke, and that if he were to get it right, got seriously ill. She was unable to languages that are not mainstream (cf. higher): -- dc] he would have to work in a much more replace him in the 5 months he was away. complex programming language, namely The other Java men could not do his Yes. This is true. BTW, have you read the real C++. work. To her amazement, choice of this? It supports your case. language mattered less than the other About Good Programmers skills the programmers had. The "Debunking the Myth of a Desperate conclusion from this story that this Software Labor Shortage" http:// heather.cs.ucdavis.edu/itaa.real.html From: [email protected] (Marc manager actually arrived at was that it Spitzer) was bad to have skilled programmers -- One of its counterintuitive findings is Date: Fri, 18 Jan 2002 19:58:46 GMT she alone should make the design this: Subject: Re: True faiths decisions and programmers would simply "A study quoted Myths and Methods: a Newsgroups: comp.lang.lisp, implement them. She could now return Guide to Software Productivity by David comp.lang.ada, comp.lang.eiffel, to her policy of using only mainstream T. Fisher (Prentice-Hall, 1991) found that comp.lang.smalltalk languages and hire only unskilled the factor Personnel Capability, i.e. [...], most places want to hire, for lack of programmers who lied about knowing a general talent and energy of the language. As far as I know, nothing a better term, cogs. People who do there programmers, counted for a score of 4.18 job, go home, fear management and are interesting has happened at that company in a productivity prediciton equation. for a long time. easy to push around by management. I This was by far the largest factor; the feel the reason for this is that From: Espen Vestre next largest was Product Complexity, management knows that they CAN Date: Mon, 14 Jan 2002 08:12:01 GMT with a score of only 2.36. The factor replace one average (or sub average) Subject: Re: True faiths (Programming) Language Experience, programmer with another as long as you Newsgroups: comp.lang.lisp, i.e. experience with a specific software pick commodity people and are using comp.lang.ada, comp.lang.eiffel, skill, had the smallest score among the 15 commodity languages. The problem with comp.lang.smalltalk factors studied, with a score of only 1.20. very good or even worse great The scary thing is that your experience is Fisher comments: programmers is that you need to find no exception, there are _so_ many 'The relatively small impact of language more people like that to replace them, representatives of this type of manager knowledge is an important fact which is they do not fear management and around. It's the kind of manager that not intuitively obvious. Judging by generally are "trouble makers", they have actually thinks that hiring java or C++ advertisements for programmers it would opinions that differ from management programmers is so easy because they seem that [IT] managers tend to about what to do and/or how to do it with teach these languages at "every school", overemphasize specific language facts to back them up. and fail to understand that having experience.'" From: Ed Falis successfully spent 2 or 3 years at some Date: Fri, 18 Jan 2002 20:11:28 GMT school which educates "it professionals" On Simplified Language Subject: Re: True faiths doesn't necessarily imply that you're Dialects Newsgroups: comp.lang.lisp, suited to be a programmer at all, and it comp.lang.ada, comp.lang.eiffel, _definitely_ doesn't mean that you're well From: [email protected] (Kaz Kylheku) comp.lang.smalltalk trained in the languages they happen to Reply-To: [email protected] Yes, and they also have this annoying use at that school. Date: Fri, 18 Jan 2002 19:57:50 GMT habit of coming through with "home Subject: Re: True faiths From: "Kevin McFarlane" runs" for the company when conventional Newsgroups: comp.lang.lisp, wisdom says their approach is wrong. Date: Mon, 14 Jan 2002 11:42:59 -0000 comp.lang.ada, comp.lang.eiffel, Subject: Re: True faiths comp.lang.smalltalk Newsgroups: comp.lang.lisp, Most C++ programmers I have come comp.lang.ada, comp.lang.eiffel, across know only an imaginary, comp.lang.smalltalk simplified dialect of C++ that they have [...] Employers are obsessed with assembled from various incorrect buzzwords. Many of the buzzwords sources, and compiler-specific reference. they're obsessed about can be learnt to a It is my experience that attitudes toward

Volume 23, Number 1, March 2002 Ada User Journal 44 Conference Calendar Conference Calendar This is a list of European and large world-wide events that may be of interest to the Ada community. More information on items marked ♦ is available elsewhere in the Journal. The information here is extracted from the online Conference announcements for the international Ada community at http://www.cs.kuleuven.ac.be/~dirk/ada-belgium/events/list.html on the Ada-Belgium webserver. These pages contain full announcements, calls for papers, calls for participation, programmes, URLs etc and are updated regularly.

2002

06-08 May 3rd European COTS User Working Group Workshop (ECUA Workshop) Horsholm, Denmark. Includes "High Integrity Systems" working session, presentation by Pierre Morere, Aonix, France, on "Providing a Certified Development Environment for Safety Critical Systems".

15-17 May 3rd International Conference on Integrated Formal Methods 2002 (IFM'2002) Turku, Finland.

19-25 May International Conference on Software Engineering (ICSE'2002) Orlando, Florida, USA.

26-29 May 3rd International Conference on eXtreme Programming and Agile Processes in Software Engineering (XP'2002) Alghero, Sardinia, Italy.

27-31 May 14th Conference on Advanced Information Systems Engineering (CAiSE'02) Toronto, Canada. Topics include: Distributed, Web and Mobile Architectures; OO and Agent-Oriented Technologies and their Applications to IS Development; Languages and Protocols for IS; Component-ware and IS; etc.

04-07 June 8th International Symposium on Software Metrics (Metrics'2002) Ottawa, Canada Theme: "Measuring and Managing Software Risks in the Age of Internet”.

05-07 June 6th Brazilian Symposium on Programming Languages (SBLP'2002) Rio de Janeiro, RJ, Brazil. Topics include: Technical research papers on Programming language design and implementation, Domain-specific programming languages, Programming languages for mobile, WWW, and network computing, Design and implementation of programming tools and environments, Teaching programming languages, etc.; Experience reports on the use of programming languages, tools, and environments; Tutorials on subjects related to programming languages, APIs, tools, environments or theories.

09-12 June 7th European Conference on Software Quality Helsinki, Finland.

10-14 June 16th European Conference on Object-Oriented Programming (ECOOP'2002) Málaga, Spain. Topics include: implementations of language features; language support for security and safety; techniques for embedded and mobile code; compilation for distributed, heterogeneous systems; languages and compilers for parallel computing; etc. Deadline for early registration: May 6, 2002. Includes a.o. the following events:

10 June 7th International Workshop on Component-Oriented Programming (WCOP'2002) Topics include: components in distributed embedded systems, quality attributes, etc.

10-11 June 12th PhD Students Workshop in Object-Oriented Systems (PhDOOS'2002) Topics include: Concurrent, real-time, parallel systems; Patterns; Distributed and mobile object systems; Frameworks and software architectures; Language design and implementation; Object testing and metrics; Programming environments; Metaprogramming; etc.

11 June 6th Workshop on Pedagogies and Tools for Learning Object-Oriented Concepts Topics include: approaches and tools for teaching design early; design early vs. design late; topic presentation issues; non-trivial examples to exemplify OO concepts; etc.

Volume 23, Number 1, March 2002 Ada User Journal Conference Calendar 45

11 June Workshop on Inheritance Topics include: Flaws and anomalies in the way inheritance is currently implemented or used; Inheritance and parameterization, inheritance and typing, inheritance and encapsulation, inheritance and behavior; Inheritance and software maintenance, inheritance vs. analysis/design/implementation, inheritance vs. program understanding, refactoring, tools; Experience on the benefits and drawbacks of inheritance in real projects; etc.

11 June Workshop on Multiparadigm Programming with OO Languages (MPOOL'2002) Topics include: non-OO programming with OO languages; merging functional/logic/OO/other programs (language crossbinding); non-OO programming at the meta level (e.g. template metaprogramming);module systems vs. object systems; etc.

11 June 2nd International Workshop on Composition Languages (WCL'2002) Topics include: Programming paradigms for software composition; Scalability and extensibility of the language abstractions; Design and implementation strategies for cross-platform development; etc.

11 June 1st International Workshop on Unanticipated Software Evolution (USE'2002) Topics include: Formal methods, language concepts and implementation techniques for USE; USE support at different stages of a program's life-cycle: compile-time, load-time and run-time; USE support in object-oriented languages, component models and related infrastructures; Experience reports on engineering for 24x7 availability and on-line software upgrades; etc.

11 June 5th Workshop on Object-Orientation and Operating Systems (OOOSWS'2002) Topics include: distributed OOOS and middleware, what are the penalties of OO in OS and how to avoid them, reusability and interoperability of OOOS components, OOOS for embedded systems, real-time OOOS, etc.

11 June Workshop on Resource Management for Safe Languages

10-15 June 27th Annual USENIX Technical Conference (USENIX'2002) Monterey, Canada. Topics include: Reliability and QoS; Usage studies; Web technologies; Interoperability of heterogeneous systems; special track on freely redistributable technology (GNOME, GNU, Linux, Tcl/Tk and more); etc

17-19 June ACM SIGPLAN 2002 Conference on Programming Language Design and Implementation (PLDI'2002) Berlin, Germany. Sponsored by ACM SIGPLan in cooperation with ACM SIGSoft Topics include: implementations of language features; language support for security and safety; techniques for embedded and mobile code; compilation for distributed, heterogeneous systems; languages and compilers for parallel computing; etc.

17-19 June 16th Annual International Symposium on High Performance Computing Systems and Applications (HPCS'2002) Moncton, New-Brunswick, Canada. Topics include: session on parallel and distributed real-time computing (software engineering and formal methods; programming languages and run-time systems; design and analysis tools; case studies and applications; etc.); etc.

♦ 17-21 June 7th International Conference on Reliable Software Technologies - Ada-Europe'2002 Vienna, Austria. Sponsored by Ada-Europe, in cooperation with ACM SIGAda. Topics include: management of software development and maintenance; software quality; software development methods and techniques; software architectures; tools; kinds of systems; applications; Ada language and tools; Ada experience reports; education and training; case studeies and experiments; and a special session on embedded systems, including the use of Ada in this realm. Includes workshop “A Standard Container Library for Ada”.

19-21 June 14th Euromicro International Conference on Real-Time Systems (ECRTS'2002) Vienna, Austria.

Ada User Journal Volume 23, Number 1, March 2002 46 Conference Calendar

19-21 June ACM SIGPLAN Joint Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES'02) and Software and Compilers for Embedded Systems (SCOPES'02) Berlin, Germany. Immediately after PLDI'02. Topics include: Programming languages for embedded applications; Software design for multiprocessor systems; Memory management/garbage collection for embedded systems; Concurrent+distributed embedded environments/runtime systems; Real-time operating systems: environment and tools (e.g., RT- Linux); Exception and interrupt handling for real-time; Code generation for embedded processors; Program optimization for real-time performance and DSPs; Real-time scheduling analysis; etc.

20-21 June 1st International IFIP/ACM Working Conference on Component Deployment (CD'2002) Berlin, Germany.

23-26 June International Conference on Dependable Systems and Networks (DSN'2002) Washington, D.C., USA.

24-27 June 2002 International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA'2002) Las Vegas, Nevada, USA. Topics include: Parallel/Distributed applications; Reliability and fault-tolerance: Software and hardware fault-tolerance (system- and application-level), etc.; Real-time and embedded systems; Object Oriented Technology and related issues; Software tools and environments for parallel and distributed platforms: Operating systems, compilers, languages, debuggers, monitoring tools, software engineering on parallel/distributed systems; Education: parallel and distributed processing in computer science curriculum (both graduate and undergraduate levels.); Recent history (last decade) of parallel/distributed processing and what to expect during the next decade if history repeats itself; etc. Includes:

24-27 June PDPTA2002 - Special Session on Parallel and Distributed Programming Languages and Software Tools Topics include: Task allocation strategies; Fault tolerance in distributed systems; Real-time distributed systems; Correctness in distributed systems; Middleware; Programming language support for distribution; etc.

24-27 June PDPTA2002 - Special Session on Coordination and Component-Oriented Computing (Languages, Models, Systems) Topics include: programming language support for COC and component frameworks in particular; etc.

02-03 July International Workshop on Distributed Event-Based Systems (DEBS'02) Vienna, Austria. Topics include: Programming language support and integration (e.g. typing, abstractions); Real- time distributed event systems; Integration with standard middleware; Fault-tolerant event distribution; Quality of service and its specification; Case studies of challenging applications and requirement analysis; etc.

10 July 3rd International Workshop on Constructive Methods for Parallel Programming (CMPP'2002) Dagstuhl, Germany. In conjunction with MPC'02 Topics include: languages for parallel programming; parallel object-oriented programming; hardware-software codesign; distributed computing; etc.

12-13 July 7th International Workshop on Formal Methods for Industrial Critical Systems (FMICS'2002) Málaga, Spain. Topics include: Verification and validation of complex, distributed, real-time systems and embedded systems; Verification and validation methods that aim at circumventing shortcomings of existing methods in respect to their industrial applicability; Case studies and project reports on formal methods related projects with industrial participation (e.g. safety critical systems, mobile systems, object-based distributed systems); etc.

15-18 July Workshop on Real-time and Embedded Distributed Object Computing Washington DC, USA.

17-20 July International Symposium on Parallel and Distributed Computing (ISPDC'2002) Iasi, Romania. Topics include: programming paradigms and tools; real-time distributed systems; security; fault tolerance; application case studies; etc.

20-24 July 11th Formal Methods Europe Symposium (FME'2002) Copenhagen, Denmark. Theme: "Formal Methods: Getting IT Right". In conjunction with the 3rd Federated Logic Conference (FLoC'02).

Volume 23, Number 1, March 2002 Ada User Journal Conference Calendar 47

18-21 August 2002 International Conference on Parallel Processing (ICPP'02) Vancouver, British Columbia, Canada. Topics include: Programming Methodologies and Tools; Compilers and Languages; Parallel/Distributed Algorithms; etc.

18-22 August 2002 Rational Software User Conference (RUC'2002) Lake Buena Vista, Florida, USA. Topics include: case studies featuring one or more Rational products, provide practical tips and techniques geared towards intermediate or advanced users, etc.

20-23 August 13th International Conference on Concurrency Theory (CONCUR'2002) Brno, Czech. Repubic. Topics include: concurrency related aspects of: real-time systems, distributed programming, object-oriented programming, case studies, tools and environments for programming and verification, etc.

26-28 August International Conference on Pervasive Computing (PERVASIVE'2002) Zurich, Switzerland. Deadline for submissions: June 19, 2002 (posters and short papers).

26-29 August 26th Annual International Computer Software and Applications Conference (COMPSAC'2002) Oxford, England. Theme: Prolonging Software Life: Development and Redevelopment. Topics include: Component-based; Object-oriented technology; Quality management; Safety and security; Software architecture, software development framework, and design; Software evolution; Software fault tolerance; Software re-engineering; Software reliability; Software reuse; Distributed systems; Embedded systems; Enterprise systems; Middleware systems; etc.

27-30 August European conference on Parallel Processing (Euro-Par'2002) Paderborn, Germany. Topics include: Support Tools and Environments; Performance Evaluation, Analysis and Optimization; Distributed Systems and Algorithms; Parallel Programming: Models, Methods and Programming Languages; etc.

02-05 September 8th International Conference on Object-Oriented Information Systems (OOIS'2002) Montpellier, France. Topics: OO frameworks; OO components/COTS; OO patterns; OO middle- ware; Reuse processes; Web-based Applications; OO distributed systems; OO built-in tests; etc. Includes a.o. the following events:

02 September OOIS2002 - Workshop on MAnaging of SPEcialization/Generalization HIerarchies (MASPEGHI) Deadline for paper submissions: May 6, 2002.

02 September OOIS2002 - Workshop on the planning and management of organisational transition to Object Technology

04-06 September 3rd International Conference on Parallel and Distributed Computing, Applications, and Techniques (PDCAT'2002) Kanazawa, Japan. Topics include: Formal methods and programming languages; Parallelizing compilers; Web technologies; Component-based and OO Technology; Tools and environments for software development; etc.

04-06 September EUROMICRO Conference Dortmund, Germany. Includes conference tracks on Software Process and Product Improvement, and on Component-based Software Engineering (topics: Components and Reuse; Component Specification; Component Design, Implementation, Testing; Development Environment and Tools; Components for Real-time systems; Component-based embedded systems; Case Studies; etc.)

09-12 September 7th International Symposium on Formal Techniques in Real-Time and Fault Tolerant Systems (FTRTFT'2002) University of Oldenburg, Germany.

09-13 September IEEE Joint Conference on Requirements Engineering (RE'02) Essen, Germany.

09-13 September International Conference on Practical Software Quality Techniques & Testing Techniques (PSQT/PSTT'2002 North) St. Paul, Minnesota, USA.

10-13 September 21st International Conference on Computer Safety, Reliability and Security (Safecomp'2002) Catania, Italy. Focuses on safety-critical computer applications.

17-20 September 6th International Enterprise Distributed Object Computing Conference (EDOC'2002) Lausanne, Switzerland.

Ada User Journal Volume 23, Number 1, March 2002 48 Conference Calendar

23-27 September 17th IEEE International Conference on Automated Software Engineering (ASE'2002) Edinburgh, U.K. Deadline for submissions: May 6, 2002 (abstracts), May 13, 2002 (papers).

24-27 September 8th IEEE Real-Time Technology and Applications Symposium (RTAS'2002) San Jose, California, USA. Topics include: Real-time applications in Linux; Real-time software components; Embedded control applications; Secure real-time systems; Middleware support; etc.

29 September – 2 Oct. 4th Austrian-Hungarian Workshop on Distributed and Parallel Systems (DAPSYS'2002) Linz, Austria. Topics include: Parallel and Distributed Algorithms; Languages, Tools and Environments; Applications; Distributed OO Systems; Middlewares; etc.

30 September – 04 Oct. 5th International Conference on UML - the Language and its Applications (UML'2002) Dresden, Germany. Theme: "Model Engineering, Concepts and Tools"

02 October 8th IEEE Workshop on Empirical Studies of Software Maintenance (WESS'2002) Montreal, Quebec, Canada.

03-06 October IEEE International Conference on Software Maintenance (ICSM'2002) Montreal, Canada. Theme: Maintaining distributed heterogeneous systems. Topics include: Design for maintenance; Formal methods; Software reusability; Empirical studies; Programming languages; Maintenance and/or productivity metrics; Preventive maintenance; Tools and environments; Freeware and open source applications; Internet and distributed systems; Source code analysis and manipulation; Impact of new software practices; etc. Deadline for submissions: May 1, 2002 (fast track papers, dissertation forum, industrial applications).

06-10 October 10th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-X) San Jose, California, USA. Topics include: Interaction of operating systems, compilers,. programming languages, and architectures; Case studies of hardware/software design in novel experimental systems; etc.

07-09 October 2nd Workshop on Embedded Software (EMSOFT'02) Grenoble, France. Topics include: System design and integration methodologies, Programming languages and software eng., etc.

13-16 October 21st Symposium on Reliable Distributed Systems (SRDS'2002) Osaka University, Suita, Japan. Topics include: Distributed systems with reliability, availability, security, safety, and/or real-time requirements; Distributed databases and transaction processing; Distributed objects and middleware systems; Security and high confidence systems; Analytical or experimental evaluations of reliable distributed systems; etc.

♦ 17 October Combined Ada UK / Embedded Systems Club Conference UK. Topics include: any topic relevant to the embedded systems and/or Ada communities.

18-20 October Conference on Quality Engineering in Software Technology (CONQUEST'2002) Nuremberg, Germany.

27-31 October 21st Digital Avionics Systems Conference (DASC'2002) Irvine, California, USA. Topics include: avionics (flight critical systems, system engineering, open systems, software engineering, etc.), Air Traffic Management, etc.

28 October – 01 Nov. 4th International Symposium on Distributed Objects and Applications (DOA'2002) Irvine, California, USA. Topics include: Design patterns for distributed object design; Interoperability- supporting environments; Security, including authorisation and authentication; Reliable and fault tolerant middlewares; Real-time/Reflective middlewares; Web Services and distributed objects, including SOAP interoperability and service discovery; Reports on Best Practice; etc. Deadline for paper submissions: May 31, 2002.

04-08 November 17th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA'2002) Seattle, WA, USA. Deadline for submissions: July 19, 2002 (Posters, Demonstrations, Doctoral Symposium, and Student Volunteers).

12-15 November 13th International Symposium on Software Reliability Engineering (ISSRE'2002) Annapolis, Maryland, USA. Topics include: Software testing and verification; Secure software engineering; Security testing and certification; Reliability of distributed systems; Standards and regulation; etc.

Volume 23, Number 1, March 2002 Ada User Journal Conference Calendar 49

Deadline for submissions: May 1, 2002 (tutorials, panels), August 1, 2002 (student papers, fast abstracts)

18-22 November ACM SIGSOFT 2002 10th International Symposium on the Foundations of Software Engineering (FSE-10) Charleston, South Carolina, USA. Topics include: Component-Based Software Engineering; Empirical Studies of Software Tools and Methods; Feature Interaction and Crosscutting Concerns; Generic Programming and Software Reuse; Software Engineering Tools and Environments; Software Reliability Engineering; Software Safety; Specification and Verification; etc. Deadline for submissions: August 15, 2002 (student posters).

02-04 December 8th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS'2002) Greenbelt, Maryland, USA. Topics include: technologies for developing complex systems; means of avoiding, controlling, or coping with complexity; embedded real time complex systems; distributed and network based complex software systems; design and analysis of complex software systems; formal methods for complex systems; techniques for component-based software development; etc. Deadline for submissions: May 3, 2002 (initial abstracts), May 10, 2002 (papers, extended abstracts), June 7, 2002 (tutorials, panels and exhibits).

08 December 2nd Workshop on Industrial Experiences with Systems Software (WIESS'2002) Boston, Massachusetts, USA. Topics include: Distributed Systems, Programming Environments and Tools, Fault Tolerance and High Availability, Real Time and Quality of Service, Middleware, Embedded Systems, etc. Deadline for paper submissions: July 15, 2002.

♦ 08-12 December 2002 ACM SIGAda Annual International Conference (SIGAda'2002) Houston, Texas, USA. Topics include: Reliability needs and styles; Safety and high integrity issues; Use of the Ada Distributed Systems Annex; Process and quality metrics; Testing and validation; Standards; Use of ASIS for new Ada tool development; Relationships between Ada and real-timeJava; Mixed- language development; Ada in XML environments; Ada education; Use of Real-Time CORBA; Real-time networking/quality of service guarantees; Fault tolerance and recovery; Distributed system load balancing; Static and dynamic code analysis; Performance analysis; Debugging complex systems; Integrating COTS software components; System Architecture & Design. Deadline for submissions: May 6, 2002 (tutorials), June 3, 2002 (papers).

09-11 December 5th USENIX Symposium on Operating Systems Design and Implementation (OSDI'2002) Boston, Massachusetts, USA. Topics include: distributed systems, parallel systems, embedded systems, the influence of hardware development on systems and vice-versa, etc. Deadline for paper submissions: May 12, 2002.

10 December Birthday of Lady Ada Lovelace, born in 1815 – Happy Programmers' Day!

2003

06-09 January Software Technology Track of the 36th Hawaii International Conference on System Sciences (HICSS-36) Big Island of Hawaii, USA. Includes mini-tracks on: Experimental Software Engineering; Domain-Specific Languages; Distributed Object and Component-based Software Systems (Design Patterns for Distributed Systems, Middleware, Programming Languages and Environments for Distributed Object and Component Systems, ...); etc.

05-07 February 11th Euromicro Conference on Parallel Distributed and Network based Processing (PDP'2003) Genoa, Italy. Topics include: Distributed Systems; Parallel Computer Systems; Models and Tools for Parallel Programming Environments; Advanced Applications (numerical applications with multi-level parallelism, real time distributed applications, distributed business applications, ...); Languages, Compilers and Runtime Support Systems (task and data parallel languages, object-oriented languages, scheduling and load balancing, task and object migration, ...), etc. Special sessions on: Advanced Tools for Parallel and Distributed Programming; Parallel Realtime Systems; etc. Deadline for submissions: May 31, 2002.

05-13 April European Joint Conferences on Theory and Practice of Software (ETAPS'2003) Warsaw, Poland. Event includes: conferences from 7 to 11 April 2003, affiliated workshops on 5-6 and 12- 13 April, 2003.

Ada User Journal Volume 23, Number 1, March 2002 7th International Conference on Reliable Software Technologies - Ada-Europe 2002

Vienna, Austria, June 17-21, 2002

http://www.ada-europe.org/conference2002.html

SIGAda TECHNISCHE UNIVERSITAT¨ WIEN Preliminary Program

The information presented here is preliminary - please refer to the conference website for the latest details.

In 2002, the 7th International Conference on Re- which its ever-changing history has left an indeli- liable Software Technologies will take place in ble mark, manifested also in the rich cultural her- Vienna, Austria, from June 17th to June 21st. The itage. Shaped by its hundreds of years as capital conference offers a technical program and exhibi- of an empire, the city’s ultimate fascination nowa- tion, plus a series of tutorials and a workshop. days stems from combining imperial grandeur with The conference provides an international forum for explosive modernity. researchers, developers and users of reliable soft- The conference will take place in the Parkhotel ware technologies. Presentations and discussions Sch¨onbrunn which originated in 1907 as the guest cover applied and theoretical work currently con- house of Emperor Franz Josef I. The newly ren- ducted to support the development and mainte- ovated hotel is located in the immediate vicin- nance of software systems. ity of the “Sch¨onbrunn Palace” and its beautiful Vienna, a city with about 2 million inhabitants is surrounding park, situated close to the center of situated in the heart of Europe. It is a city on Vienna. Overview of the Week

Morning Late Morning After Lunch Afternoon

SPARK, an “Intensive Overview”, P. Amey and R. Chapman

Monday June 17th MaRTE OS: Bringing Embedded Systems and Real-Time POSIX Together, Tutorials M. Gonz´alez and M. Aldea

Principles of Physical Software Design in Ada95, Implementing Design Patterns in Ada95, M. Heaney M. Heaney

Tuesday Embedded Systems Embedded Systems Real-Time Systems June 18th unsuitable for High Integrity Sessions & object orientation, Systems Exhibition Maarten Boasson Case Studies Vendor presentations Wednesday On Architectural Program Analysis June 19th Stability and Evolution, Ada Language Tools Sessions & Mehdi Jazayeri Issues Exhibition Vendor presentations Thursday Reasoning About Distributed Systems Libraries Contextware: Bridging June 20th Reliable Distributed Physical and Virtual Sessions & Programs, Worlds, Exhibition Rachid Guerraoui Vendor presentations OO Technology Alois Ferscha

CORBA 3 and CORBA for Embedded Systems, S. Ron Oliver

Friday June 21st Using Open Source Hardware and Software to Cleanroom Software Engineering: An Overview Tutorials & Build Reliable Systems, W. Bail Workshop J. Sherrill and J. Gaisler Exceptions – What You Always Wanted to Workshop: A Standard Know About Exceptions, But Were Afraid to Container Library for Ada, Ask E. Lamm C. Colket Invited Speakers Embedded Systems Unsuitable for On Architectural Stability and Object Orientation Evolution Maarten Boasson, Quaerendo Invenietis Mehdi Jazayeri, Technical University of bv & University of Amsterdam Vienna It will be argued that the current focus on object Many organizations are now pursuing software ar- technology is detrimental to progress in embedded chitecture as a way to control their software devel- systems. The core of the problem is that OO is fine opment and evolution challenge. A software archi- for analysis but does not answer the design needs. tecture describes the properties of a family of prod- Solutions for shortcomings are sought within the ucts, thus addressing the problems of both develop- OO dogma, making things worse. This talk will ment and evolution. An important problem is to be outline a different approach. able to evaluate the “goodness” of a proposed archi- Maarten Boasson studied mathematics in Gro- tecture. The talk will propose stability or resilience ningen, the Netherlands. He became involved in as a measure of goodness of an architecture. The advanced studies aiming at control of complexity, stability of an architecture is a measure of how well both of the development process and of the sys- it accommodates new family members. It can be tem under development itself. This resulted in the measured by the amount of code changes necessary creation of a novel architecture for distributed re- for the introduction of a new member. A case study active systems, that has been applied successfully of several releases of a telecommunication software in numerous systems and is, more than 10 years system containing a few million lines of code will be after its introduction, still unsurpassed in its sup- used to demonstrate one way to try to estimate ar- port for integration, fault tolerance and component chitectural stability. The talk will also present the reuse. In 1996 Boasson was appointed professor of challenges in software evolution and conclude with computer science at the University of Amsterdam, recommendations for future research. where he holds a chair in Industrial Complex Com- puter Systems. He played a major role in establish- Mehdi Jazayeri is a professor of computer science ing a dutch national research program in embedded at the Technical University of Vienna. He spent systems, and is currently associate editor-in-chief of many years in software research and development IEEE Software. at several Silicon Valley companies, including ten years at Hewlett-Packard Laboratories in Palo Alto, Reasoning About Reliable Dis- California. His recent work has been concerned with component-base software engineering of dis- tributed Programs tributed systems, particularly Web-based systems. Rachid Guerraoui, Swiss Federal Institute He is a coauthor of Programming Language Con- of Technology in Lausanne (EPFL) cepts (John Wiley, 1998), Fundamentals of Soft- What does it mean for a distributed program to ware Engineering (Prentice-Hall, 2002), and Soft- be reliable? A program is reliable if it looks like ware Architecture for Product Families (Addison- a centralized program that does never fail. This Wesley, 2000). talk aims at addressing the ramifications underlying this first glance intuitive answer. While doing so, Contextware: Bridging Physical the talk overviews several decades of work on cor- and Virtual Worlds rectness of distributed programs, from Lamport’s atomicity and Papadimitrious’ serializability, to lin- Alois Ferscha, University of Linz earizability and x-ability. Alois Ferscha joined the University of Linz as full Rachid Guerraoui is professor in computer science professor in 2000. He published more than 60 tech- at the Swiss Federal Institute of Technology in Lau- nical papers on topics related to parallel and dis- sanne (EPFL). He leads the Distributed Program- tributed computing. Currently his research inter- ming Laboratory and teaches object-oriented pro- ests are in the areas of Pervasive Computing, Em- gramming and distributed algorithms. He is in- bedded Software Systems, Wireless Communica- terested in devising abstractions for reliable dis- tion, Multiuser Cooperation, Distributed Interac- tributed programming. tion and Distributed Interactive Simulation. Sessions and Presentations Embedded Systems Ada Language Issues Evaluating Performance and Power of Object- Adding Design by Contract to the Ada Language, oriented vs. Procedural Programming in Em- Ehud Lamm (Israel). bedded Processors, Alexander Chatzigeorgiou and How to Use GNAT to Efficiently Preprocess New George Stephanides (Greece). Ada Sentences, J. Miranda, F. Guerra, E. Martel, OMC-INTEGRAL Memory Management, Jose J. Mart´ın, and A. Gonz´alez (Spain). Manuel P´erez Lobato and Eva Mart´ın Lobo Exposing Uninitialized Variables: Strengthening (Spain). and Extending Run-Time Checks in Ada, Robert Language Issues of Compiling Ada to Hardware, Dewar, Olivier Hainque, Dirk Craeynest, and Michael Ward and Neil C. Audsley (UK). Philippe Waroquiers (US, France, Belgium). Case Studies Program Analysis Software Development Reengineering – An Expe- Static Dependency Analysis for Concurrent Ada95 rience Report, Adrian Hoe (Malaysia). Programs, Zhenqiang Chen, Baowen Xu, Jianjun Zhao, and Hongji Yang (China, Japan, UK). Using a Secure Java Micro-kernel on Embedded Devices for the Reliable Execution of Dynamically DataFAN: A Practical Approach to Data Flow Uploaded Applications, Walter Binder and Bal´azs Analysis for Ada95, Krzysztof Czarnecki, Michael Lichtl (Austria). Himsolt, Ernst Richter, Falk Vieweg, and Alfred Rosskopf (Germany). Development of a Control System for Teleoperated Robots using UML and Ada95, Francisco J. Or- Prioritization of Test Cases in MUMCUT Test tiz, Alejandro Mart´ınez, B´arbara Alvarez, Andr´es Sets: An Empirical Study, Yuen T. YU and Man Iborra, and Jos´eM.Fern´andez (Spain). F. LAU (China, Australia). Real-Time Systems Distributed Systems A POSIX-Ada Interface for Application-Defined Concurrency Control in Transactional Drago, Scheduling, Mario Aldea Rivas and Michael Marta Pati˜no-Mart´ınez, Ricardo Jim´enez-Peris, Gonz´alez Harbour (Spain). J¨org Kienzle, and Sergio Ar´evalo (Spain, Switzer- land). The Formal Development of a Real Time Kernel: Kernel Modelling, Stephen G. Michell and Douglas Transparent Environment for Replicated Raven- J. Howe (Canada). scar Applications, Lu´ıs Miguel Pinho and Fran- cisco Vasques (Portugal). Vendor Presentations Modeling and Schedulability Analysis of Hard Each vendor will give a presentation in the vendor Real-Time Distributed Systems Based on Ada presentation track. Please find a (preliminary) list Components, Julio L. Medina, J. Javier Guti´errez, of vendors on the last page. Jos´e M. Drake, and Michael Gonz´alez Harbour (Spain). High Integrity Systems Libraries, APIs, Bindings Closing the Loop: The Influence of Code Analysis on Design, Peter Amey (UK). An Ada Binding to the IEEE 1003.1q (POSIX Tracing) Standard, Agust´ın Espinosa Minguet, High-Integrity Systems Development for Inte- Ana Garc´ıa Fornes, and Alfons Crespo i Lorente grated Modular Avionics using VxWorks and (Spain). GNAT, Paul Parkinson and Franco Gasperoni (UK, France). GNAT Ada Database Development Environment, Michael Erdmann (Germany). Tools OO Technology A Tailorable Distributed Programming Environ- Ada, Interfaces and the Listener Paradigm, Jean- ment, E. Martel, F.Guerra, and J. Miranda Pierre Rosen (France). (Spain). Using Object Orientation in High Integrity Appli- About the Difficulties of Building a Pretty-Printer cations: A Case Study, Alejandro Alonso, Roberto for Ada, Sergey Rybin and Alfred Strohmeier (Rus- L´opez, Tullio Vardanega, and Juan Antonio de la sia, Switzerland). Puente (Spain, the Netherlands). Tutorials and Workshop SPARK, an “Intensive Overview” Implementing Design Patterns in Peter Amey & Rod Chapman, Praxis Ada95 Critical Systems Matthew Heaney SPARK is an annotated sub-language of Ada which This tutorial addresses the question of what “design is unambiguous and suitable for rigorous static patterns” are and presents many advanced idioms analysis. The tutorial, which is extracted from for object-oriented programming in Ada95. the four-day “Software Engineering with SPARK” course will provide an intensive introduction to CORBA 3 and CORBA for Em- SPARK and the static analysis performed by the bedded Systems SPARK Examiner. Attendees will be encouraged to bring laptop computers on which the SPARK S. Ron Oliver, Top Graph’X Examiner will be installed. The tutorial starts with an overview of CORBA 3 with emphasis on changes from CORBA 2. There- MaRTE OS: Bringing Embedded after it addresses CORBA principles, the In- Systems and Real-Time POSIX terface Definition Language (IDL), client pro- Together grams, object (server) programs, CORBA Ser- vices, CORBA Facilities, and the CORBA Com- Michael Gonzalez Harbour & Mario ponent Model (CCM). Several advanced features of Aldea, University of Cantabria CORBA 3, including Minimum CORBA and Real- Time CORBA, are also discussed. These topics are MaRTE OS is a free software implementation of the of particular interest when using CORBA in the POSIX minimum real-time system profile. It is de- area of embedded systems. signed for embedded systems and provides a devel- opment environment for Ada, C, or mixed language Using Open Source Hard- and real-time applications. The tutorial will describe the main features of MaRTE OS, its architecture Software to Build Reliable Systems and performance, and the details on its develop- Joel Sherrill, OAR Corporation ment environment. Jiri Gaisler, Gaisler Research In addition, the tutorial will discuss the main A framework for the development of embedded sys- real-time operating system services defined in the tems based solely on open-source components is POSIX.13 minimum real-time profile. These ser- presented. The framework is based on the LEON vices allow application developers to write portable SPARC-V8 processor, RTEMS real-time operating applications that meet their real-time requirements, system, and the GNU Ada toolchain. The tutorial and that may be be implemented on small embed- includes a discussion of the implications of applying ded systems. the open source model to hardware and embedded systems software. An overview of the characteris- Principles Of Physical Software tics of real-time embedded systems, the cross de- Design in Ada95 velopment process, and the features of Ada95 that aid the development of real-time embedded systems Matthew Heaney is presented. A demonstration is made on how to configure the target processor, adapt the RTEMS The tutorial addresses issues concerning the compi- operating system to custom boards, and develop lation of large software systems and presents many Ada applications. techniques for ameliorating the problems. Most texts on software design concentrate almost Cleanroom Software Engineering: exclusively on logical design, and provide only a An Overview cursory explanation of physical design. Discussions about types and objects are important, but there William Bail, MITRE & University of are also many pragmatic compilation issues that Maryland cannot be ignored. Unless care is taken, depen- Cleanroom Software Engineering is an approach to dencies among modules often force a substantial the development of software that emphasizes de- recompile when seemingly innocuous changes are fect avoidance and that is strongly rooted in for- made. This can stymie development, especially for mal methods and mathematics. While not gain- large systems that require hours (or even days) to ing the notoriety that other techniques have en- rebuild. joyed, projects that have applied Cleanroom have experienced significant benefits, including low de- Workshop: A Standard Container fect rates. It emphasizes multiple builds in an in- Library for Ada cremental model, with each build constructed using forms known as box structures. Verification of the Workshop Co-Chairs structures is accomplished using correctness proofs, while software certification is based on usage models Ehud Lamm, The Open University of Israel which facilitate statistical testing. Recent work has Email: [email protected] integrated Cleanroom with object-oriented models. John English, University of Brighton In addition the SEI has released a Cleanroom Soft- Email: [email protected] ware Engineering Reference Model, providing an integrated set of work products and processes for Both contemporary dominant general purpose organizations wishing to apply this technique. programming languages, Java and C++, come equipped with a standard set of reusable containers. Exceptions - What You Always There are several Ada libraries for these purposes, Wanted to Know About Excep- but there is little agreement on the exact details of tions, But Were Afraid To Ask a standard container library. A standard container library is important in terms of reusable compo- Currie Colket, MITRE & ACM SIGAda nents for efficient software engineering. Moreover Exception processing has the power to detect se- it can be used for educational purposes and for ef- rious problems in the execution of a program and ficient implementation of common algorithms and return one back to a known safe state with high in- data structures. tegrity. As such, it can be a very powerful tool for Designing a useful standard container library for developing high quality software. Ada is a difficult task, as the language is used in a To be effective, exceptions and their handling must wide variety of different domains, with different and be addressed at the design level and not at the code at times conflicting demands. Hence the need for level.This presentation will discuss several alterna- debating and elaborating the issues among a group tive approaches to addressing error handling in the of interested Ada users. It is the aim of the work- design using exceptions. shop to come up with the basis for a recommenda- tion which would lead to the adoption of a stan- Moreover the use of exceptions can be assessed via dard container library as part of the Ada standard automated tools. Several analyses that can be per- library, in the next revision of the Ada language. formed on a program via automated tools so the program quality can be improved will be discussed. Prospective participants should consult the confer- The tutorial will conclude by addressing proposed ence web pages or directly contact the workshop needs for exceptions resulting from the Exception Co-Chairs to learn about the terms of workshop Workshop held at Ada-Europe 2001. participation. Other Program Details Exhibiting Social Program Several activities have already been organized. On Exhibition space will be provided at the Parkhotel Tuesday the City of Vienna has invited us all for Sch¨onbrunn in the area of the so-called “Kaisersa- a reception at the historic town hall. Before that lon”. The exhibition and a summary of the exhibits we will enjoy a guided tour by bus that will pro- will be publicized in handouts, conference schedule, vide a first impression of the city and several of its and conference program. Announcements will be well-known sights. made in the course of technical presentations. Wednesday evening the conference banquet will take place at a famous “Heurigen” in Grinzing. Sponsoring Over a glass of wine and traditional Viennese cuisine we will have the opportunity to experi- A sliding scale of sponsorship provides a range of ence several of the mundane ingredients such as benefits. All levels include display of the sponsor’s “Schrammel-Musik” and “Wiener Gem¨utlichkeit” logo on the conference web site and in the program. that add to the flair of this city. See the conference web site for more details ( http://www.ada-europe.org/conference2002.html ). 7th International Conference on Reliable Software Technologies - Ada-Europe 2002 Vienna, Austria, June 17-21, 2002 REGISTRATION FORM

PARTICIPANT Please use block capitals Ms/Mrs Mr Title Family name First name Affiliation/Organisation Street City Post / Zip code Country Telephone Fax Email Special requirements (e.g. diet) Reduced registration fee member Ada-Europe; national organization academia member ACM; membership number

Additional Comments Registration time Early registration (by May 15th) Late or on site (after May 15th)

REGISTRATION FEES Conference registration fee (see table on next page) Threedayconference...... EUR Individualdays(Tue Wed Thu )...... EUR Tutorial/Workshop registration (see table on next page) Please indicate tutorials/workshop for which you want to register:

Monday, June 17th T 1 T 2 T 3 T 4 Friday,June21stT5T6T7T8W

Tutorial/Workshopregistrationfee...... EUR Extra Banquet ticket: tickets@ 53 EUR...... EUR Extra proceedings: proceedings @ 30 EUR ...... EUR

TOTAL PAYMENT DUE ...... EUR

PAYMENT METHOD By bank transfer By cheque By credit card By bank transfer to account number 0130-30655/00, “TU Wien – Ada-Europe 2002”. The account is at the CA-BV Austria whose bank identifier (swift) code is CABVATWW (Please mention “Ada-Europe 2002” and your name and attach proof of payment, e.g., a copy of the bank draft, to this form). By cheque drawn on an Austrian Bank and made payable to: TU Wien Reliable Software Technologies –Ada-Europe 2002.

By credit card MasterCard Visa Card# Expiration Date Name as shown on credit card Signature

Mail or fax this form to: AE2002 Registration, CON.ECT, Event Management GesmbH, Kaiserstr. 14, A-1070 Vienna, Austria Fax ++43 1 522 36 36-10 Document Version 1.0 Conference Registration Fee: Three days of conference (June 18th–June 20th) including one copy of the proceedings, coffee breaks, lunches, and visit and reception in town hall on Tuesday 18th. member Ada-Europe or ACM SIGAda non member non academia academia non academia academia Early registration (by May 15th) 530 EUR 470 EUR 590 EUR 530 EUR Late registration (after May 15th) 590 EUR 590 EUR 650 EUR 650 EUR Individual day registration (per day) 270 EUR 270 EUR 300 EUR 300 EUR

Tutorial Registration Fee: Prices are per tutorial, including tutorial notes and coffee breaks. Lunches are only included when registered for full day tutorial or two half day tutorials on the same day.

full day or two halves Workshop half day on same day (by invitation only) Early registration (by May 15th) 120 EUR 230 EUR 50 EUR Late registration (after May 15th) 150 EUR 290 EUR 70 EUR

Overview of Tutorials: T1 full day SPARK, an “Intensive overview” – Amey/Chapman MaRTE OS: Bringing Embedded Systems and RT POSIX Together – full day Monday T2 Gonzalez/Aldea June 17th T3 morning Principles of Physical Software Design in Ada 95 – Heaney T4 afternoon Implementing Design Patterns in Ada 95 – Heaney T5 full day CORBA 3 and CORBA for Embedded Systems – Oliver Using Open Source Hardware and Software to Build Reliable Systems – morning T6 Sherrill/Gaisler Friday T7 afternoon Cleanroom Software Engineering: An Overview – Bail st June 21 Workshop: Standard Container Library for Ada – morning W Lamm (by invitation only) Exceptions – What You Always Wanted to Know About Exceptions, T8 afternoon But Were Afraid to Ask – Colket

Note: No registration request will be confirmed until payment has been received. CANCELLATIONS must be in writing. A Cancellation fee of 120 EUR will be applied to all cancellations. No refunds will be given for cancellations postmarked after June 1st. Substitutions will be accepted. The hotel information can be found through the web page of the conference. Additional lunch tickets will be on sale throughout the conference. For latest information see the web page at http://www.ada-europe.org/conference2002.html, or send email to [email protected]. For any information, please contact: Bettina Hainschink (Conference Secretariat), CON.ECT Tel: ++43 1 522 36 36 CON.ECT, Event Management GesmbH Fax: ++43 1 522 36 36-10 Kaiserstr. 14, A-1070 Vienna, Austria Email: [email protected] Organization

Conference Chair Tutorial Chair Local Organization Chair Gerhard H. Schildt Helge Hagenauer Bernd Burgstaller Technical University Vienna University of Salzburg Technical University Vienna Department of Computer-Aided Dept. Comp. Science & System Department of Computer-Aided Automation Analysis Automation [email protected] [email protected] [email protected] Program Co-Chairs Exhibition Chair Johann Blieberger Technical University Vienna Thomas Gruber Department of Computer-Aided Austrian Research Centers Automation Seibersdorf [email protected] [email protected] Alfred Strohmeier Publicity Chair Swiss Fed. Inst. of Technology Dirk Craeynest Lausanne Offis nv/sa & K.U.Leuven Software Engineering Lab [email protected] Alfred.Strohmeier@epfl.ch

In cooperation with

SIGAda

The organizers thank the exhibitors (preliminary list)

and the supporters (preliminary list) of the conference.

The City of Vienna

Document Version 1.0 th Autumn Conference, 17 October 2002

Register Your Interest Now !

Presenting a case study, vendor Attending as a delegate ❑ Giving a Tutorial ❑ ❑ presentation or technical paper Submitting a delegate Chairing a session ❑ ❑ Organising a workshop or "BOF" ❑ position paper

Name: ______Position: ______

Company: ______

Address: ______

______Post Code: ______Country: ______

Tel: ______Fax: ______

Email: ______

We invite contributions on any topic relevant to the embedded systems and/or Ada communities. We are particularly interested in receiving proposals for the following types of sessions:

ƒ Case studies: presentations, typically 60 minutes in duration, reporting on experience of applying embedded technologies in real-world applications. ƒ Tutorials: training sessions, typically half a day or one day in duration, with the emphasis on equipping developers with new skills and techniques. ƒ Workshops / Birds-of-a-feather sessions (BOFs): BOFs give people with common interests the opportunity to engage in substantive discussions, sharing lessons learned and establishing relationships that may continue beyond the conference. Workshops are more formal and attendees are often chosen by submission of appropriate position papers. ƒ Delegate position papers: a position paper is usually around 2 to 5 pages, although it can be longer if the technical contribution demands it, in which you to present an opinion, viewpoint or experience relevant to the community. Position papers are ideal for delegates who wish to encourage the conference to address specific issues without the need to get up and speak to an audience. ƒ Vendor presentations: commercial presentations, typically 15 to 20 minutes in duration, describing new product releases or product enhancements of interest to the community. ƒ Technical papers: presentations, typically 60 minutes in duration, covering a technical topic related to embedded systems engineering.

If you are interested in submitting a paper or proposal for a session, please contact us immediately to register your interest. We will then contact you to agree a timetable for submission.

Hazel Lawton, The Embedded Systems Club/Ada UK, Adaxia Ltd, PO Box 376, Chesterfield S42 7YB, UK Fax +44 (0) 1246 567339

Email: [email protected] www.AdaUK.org.uk www.EmbeddedSystemsClub.com

62 Forthcoming Events

Preliminary Call for Participation – SIGAda 2002 8-12 December 2002, Houston, Texas, USA Sponsored by ACM SIGAda http://www.acm.org/sigada/conf/sigada2002 (Approval pending by ACM) Constructing reliable software is an engineering challenge. The application of methods, tools, and languages interrelate to make the challenge easier or more difficult. This conference focuses on the interaction between these three aspects of software engineering, especially how features in a language such as Ada drive the tools, methods, and ultimately correctness, reliability, and quality of the resulting software. Especially welcome are papers that analyze Ada with respect to these factors or in comparison with other languages. This conference will gather industrial experts, educators, software engineers, and researchers interested in developing and testing reliable software. Technical or theoretical papers as well as experience reports with a focus on Ada are solicited. Possible topics include but are not limited to: • Reliability needs and styles • Ada education • Safety and high integrity issues • Use of Real-Time CORBA • Use of the Ada Distributed Systems Annex • Real-time networking/quality of service • Process and quality metrics guarantees • Testing and validation • Fault tolerance and recovery • Standards • Distributed system load balancing • Use of ASIS for new Ada tool development • Static and dynamic code analysis • Relationships between Ada and real-time Java • Performance analysis • Mixed-language development • Debugging complex systems • Ada in XML environments • Integrating COTS software components • System Architecture & Design

How You Can Contribute SIGAda 2002 is interested in receiving contributions in six major categories. Contributions from students are actively solicited. Technical Articles present significant results in research, practice, or education. These papers will be double-blind refereed and published in the Conference Proceedings. Papers should not exceed 5000 words (equivalent to approximately 10 pages, typeset 10-point on 16-point spacing). Extended Abstracts discuss current work for which early submission of a full paper may be premature. If your abstract is accepted, you will be expected to produce a full paper, which will appear in the proceedings. Extended abstracts will be competitively reviewed. Clearly state the contribution of the work being described, its relationship with previous work by you and others (with bibliographic references), results to date, and future directions. Please do not exceed 2500 words (equivalent to approximately 5 pages typeset 10-point on 16-point spacing). Experience Reports present timely results on the application of Ada and related technologies to the design and implementation of applications such as the following: avionics, aerospace, automobile, command and control, consumer electronics, process control, transportation, trading systems, energy, medical systems, simulation, telecommunications, etc. Such reports will be selected on the basis of the interest of the experience presented to the community of Ada practitioners. You are invited to submit a 1-2 page description of the project and the key points of interest of project experiences. Descriptions will be published in the final program or proceedings, but a paper will not be required. Workshops are focused work sessions, which provide a forum for knowledgeable professionals to explore issues, exchange views, and perhaps produce a report on a particular subject. A list of planned workshops and requirements for participation will be published in the SIGAda 2002 Advance Program. Workshop proposals will be evaluated by the Program Committee and selected based on their applicability to the conference and potential for attracting participants. Proposals should state the problem or issue to be addressed, the coordinator(s), and criteria for participant selection. Panel Sessions gather a group of experts on a particular topic who present their views and then exchange views with each other and the audience. Panel proposals should be 1-2 pages in length, identifying the topic, coordinator, and potential panelists. Tutorials offer the flexibility to address a broad spectrum of topics relevant to Ada, and those enabling technologies which make the engineering of Ada applications more effective. Submissions will be evaluated based on relevance, suitability for presentation in tutorial format, presenter’s expertise, and past performance. Tutorial proposals should include the expected level of experience of participants, an abstract or outline, the qualifications of the instructor(s), and the length of the tutorial.

Please submit Technical Articles, Extended Abstracts, Experience Reports, Workshop proposals, and Panel Sessions to the Program Chair, John McCormick and Tutorial proposals to the Tutorials Chair, David Cook . Please submit questions on the conference to the Conference Chair, Salih Yurttas . Deadline for Tutorial submissions: 6 May 2002; Deadline for other submissions: 3 June 2002 See SIGAda 2002 Home Page for details: http://www.acm.org/sigada/conf/sigada2002

Volume 23, Number 1, March 2002 Ada User Journal 64

Ada UK 2002 Sponsors

ACT Europe 8, Rue de Milan, 75009, Paris, France Tel: +33-1-49-70-67-16 Fax: +33-1-49-70-05-52 Contact: Franco Gasperoni Email: [email protected] URL: www.act-europe.fr Alenia Marconi Systems Eastwood House, Glebe Rd., Chelmsford, Essex, CM1 1QW, UK Tel: +44-(0)1276-696901 Fax: +44-(0)1276-659842 Contact: Don Harvey Email: [email protected] URL: www.aleniamarconisystems.com Aonix Europe Ltd Partridge House, Newtown Rd., Henley on Thames, Oxon, RG9 1HG, UK Tel: +44-(0)14941-415000 Fax: +44-(0)14941-571866 Contact: Neil Michniak Email [email protected] URL: www.aonix.com ARTiSAN Software Tools Stamford House, Regent St., Cheltenham, Glos., GL50 1HN, UK Tel: +44-(0)1242-229320 Fax: +44-(0)1242-229301 Contact: Peter Kibble Email: [email protected] URL: www.artisansw.com BAE SYSTEMS Warwick House, PO Box 87, Farnborough Aerospace Centre, Farnborough, Hants, GU14 6YU, UK Contact: Paul McCormack Email: [email protected] URL: www.baesystems.com Data Systems and Solutions SEAS Building, Sinfin Lane, Derby, DE24 8BJ, UK Tel: +44-(0)1332-771700 Fax: +44-(0)1332-770921 Contact: Dave Woodhall Email: [email protected] URL: www.ds-s.com EDS Hartley House, 15 Bartley Wood Business Park, Bartley Way, Hook, Hants., RG27 9XA, UK Contact: Lee Edwards Tel: +44-(0)1256-741122 Fax: +44-(0)1256-741132 Email: [email protected] First Matrix Ltd Old Lion Court, High St,. Marlborough, Wilts., SN8 1HQ., UK Tel: +44-(0)1672-515510 Fax: +44-(0)1672-515514 Contact: Alan Barker Email: [email protected] Green Hills Software Ltd Chancery Court, Lincoln Rd., High Wycombe, Bucks., HP12 3RE., UK Tel: +44-(0)1844-267950 Fax: +44-(0)1844-267955 Contact: Jon Williams Email: [email protected] URL: www.ghs.com IPL Information Processing Eveleigh House, Grove St., Bath, BA1 5R., UK Tel: +44-(0)1225-475114 Fax: +44-(0)1225-444400 Ltd Email: [email protected] URL: www.iplbath.com Contact: Ian Gilchrist LDRA Ltd 24 Newtown Rd., Newbury, Berks., RG14 7BN, UK Tel: +44-(0)635-528828 Fax: +44-(0)635-528657 Contact: Jim Kelly Email: [email protected] URL: www.ldra.com Objektum Units 2/3 Cranleigh Works, The Common, Cranleigh, GU6 8SB, UK Tel: +44-(0)1483-278178 Fax: +44-(0)1483-275384 Contact: Derek Russell or Ahmed Amin Email: [email protected] URL: www.objektum.com Praxis Critical Systems Ltd 20 Manvers St., Bath, BA1 1PX, UK Tel: +44-(0)1225-469991 Fax: +44-(0)1225-469006 Contact: Peter Amey Email: [email protected] URL: www.praxis-cs.co.uk Rational Software Ltd Kingswood, Kings Ride, Ascot, Berks., SL5 8AJ, UK Tel: +44-(0)1344-295000 Fax: +44-(0)1344-295001 Contact: Roger Bowser Email: [email protected] URL: www.rational.com John Robinson & Associates 2 Currer St., Oakenshaw, Bradford, W. Yorks., BD12 7DP, UK Tel: +44-(0)1274-691935 Fax: +44-(0)8700-558750 Contact: John Robinson Email: [email protected] URL: www.jr-and-assoc.demon.co.uk Telelogic UK Ltd Chancery House, 8 Edward St., Birmingham, B1 2RX, UK Tel: +44-(0)121-2346600 Fax: +44-(0)121-2346611 Contact: Email: [email protected] URL: www.telelogic.com TNI Europe Ltd 58a Mill St., Congleton, Cheshire, CW12 1AG, UK Tel: +44-(0)1260-291449 Fax: +44-(0)1260-291449 Contact: Tony Elliston Email: [email protected] URL: www.tni-europe.com Wind River Systems UK Ltd Unit 5 & 6, 1st Floor, Ashted Lock Way, Aston Science Park, Birmingham, B7 4AZ, UK Contact: David Bew Tel: +44-(0)121-3590999 Fax: +44-(0)121-3804444 Email: [email protected] URL: www.windriver.com

Volume 23, Number 1, March 2002 Ada User Journal