home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.lang.ada
- Path: sparky!uunet!milo!drew
- From: drew@verdix.com (Drew Johnson)
- Subject: FAQ
- Message-ID: <1992Aug14.145613.17119@verdix.com>
- Organization: Verdix Corp.
- Date: Fri, 14 Aug 1992 14:56:13 GMT
- Expires: 14 Oct 92
- Lines: 964
-
- Sorry for the long haitus between postings, but I have been very busy. I
- intend to post this about once a month. I am still working (albeit very
- slowly) on getting it into news.answers.
-
- This has only minor changes from the last post. There is a question about
- aflex/ayacc, and a couple of vendor updates. As always, I welcome comments
- and criticism.
-
-
-
- Frequently Asked Questions about comp.lang.ada
-
- Table of Contents:
-
- 1) Where can I get a list of validated Ada compilers?
- 2) Where can I get a yacc/ayacc grammar to read Ada code?
- 3) Is there an Ada-mode for Emacs?
- 4) You know, I think Ada could really benefit from having <choose_a_feature>
- from <choose_a_language>...
- 5) I just saw a very anti-Ada post that I think is definitely wrong. Why
- didn't anybody post a response to it? Should I?
- 6) Where can I get a public domain Ada compiler?
- 7) Is Ada a registered trademark of the US government?
- 8) I have seen the language name capitalized as ADA, as well as Ada. Which
- is right?
- 9) What is Ada 9X?
- 10) What is Anna, and where can I get it?
- 11) What is DRAGOON, and where can I get it?
- 12) Does anyone have a list of commercial Ada projects?
- 13) Are there versions of lex and yacc that generate Ada code?
- 14) What ftp sites exist that contain information about Ada or Ada source?
- 15) What organizations exist that deal with Ada and Ada issues? (Long)
- 16) What cheap (<500$) Ada compilers are available?
- 17) Are there any dialup BBS systems that deal with Ada?
- 18) Does anyone know where I can get X bindings for Ada?
- 19) Is there a list of Ada vendor email contacts?
- 20) Is there a list of good Ada books? (Long)
-
- 1) Where can I get a list of validated Ada compilers?
-
- (from tjmesler@vnet.ibm.com)
- By anonymous ftp from ajpo.sei.cmu.edu. Latest list is in the
- /public/ada-info directory. Only the latest list is kept, it
- has the name val-comp.hlp.ddmmmyy, where dd stands for date,
- mmm for month (3 letter abreviation), and yy stands for year.
- For example, the current list id val-comp.hlp.01Jun92.
- If the list is updated during the month the previous one
- is lost and the name of the file will change.
-
- 2) Where can I get a yacc/ayacc grammar to read Ada code?
-
- (from garym@flash.telesoft.com (Gary Morris @lone))
- masticol@dumas.rutgers.edu has kindly sent in a yacc and lex
- grammar for Ada. It's available via FTP from the archives at
- primost.cs.wisc.edu and via mail from the compilers server at
- compilers-server@iecc.cambridge.ma.us.
-
- 3) Is there an Ada-mode for Emacs?
-
- (from boubaker@mailhost.cenatls.cena.dgac.fr (Heddy Boubaker))
- There are, in fact, 3 ada modes for emacs
- - There is a simple ada-mode shipped as part of the emacs distribution.
- - a more elaborate one from Steven D. Litvintchouk of Mitre Corp called
- electric-ada
- - and gnu-ada mode. Here is a small description of the features of
- this mode:
- 1/ Compile programs within emacs
- Run compiler as inferior of Emacs, and parse its error messages. NOTE:
- I believe that this feature will only work with VADS, but it might
- have been tailored to work with other compilers.
- 2/ Ada dired
- It supplies a form of dired that helps manage the VADS environment, and
- it adds ADA vads commands into ada mode.
- Unlike a previous dired-ada implementation, this version uses the
- existing dired mode functions except where there is unresolvable
- conflict. Thus, this is more like a minor mode to dired.
- Very important because on actual version of emacs 19(beta), in fact
- lemacs (lucid emacs), dired has changed and we can no longer use
- gnu-ada mode :-(
- 3/ you can consult Ada LRM(*) during parsing error message
- (*)You can get one in wsmr-simtel20.army.mil or any repository
- mirror site.
- 4/ smart indentation
- Tries hard to do all the indenting automatically.
- Emphasizes correct insertion of new code using smart templates.
- 5/ Smart template commands (bnf)
- This is essentially a bnf processor/language-sensitive editor. The
- next message will give you an ada bnf file that you can use within
- ada-mode to expand nonterminals. But you can role your own
- grammars (e.g., your design grammar or an ADL) and put them in
- *.bnf files ..
- ; The BNF rule set is stored as a list of rules.
- 6/ debugging Ada programs within emacs
- A facility is provided for the simultaneous display of the source code
- in one window, while using a.db to step through a function in the
- other. A small arrow "=>" in the source window, indicates the current
- line.
- 7/ Move from procedure to procedure or package to package ...
- 8/ tags Ada
- 9/ and other things ...
-
- (from obry@enthuse.bellcore.com (Pascal OBRY)
- You can find the gnu-ada mode in
- ajpo.sei.cmu.edu
- cd /public/infoada/gnu
- file r1.06a-ada.tar.Z
-
-
- 4) You know, I think Ada could really benefit from having <choose_a_feature>
- from <choose_a_language>
- or
- You know, I think Ada is clearly <inferior_or_superior> to
- <choose_a_language> because it has <choose_a_feature>
-
- Such posts almost always result in religious wars about langauge, and
- never result in anything more productive than wasted bandwidth. PLEASE
- refrain from such posts unless you have a specific question about Ada.
- For example, the following kind of question *is* appropriate:
- "In <choose_a_language> I can do <choose_a_feature>. How would I go
- about doing this in Ada?"
-
- 5) I just saw a very anti-Ada post that I think is definitely wrong. Why
- didn't anybody post a response to it? Should I?
-
- Ada apparently gets more than its share of attacks, probably due to its
- unique origins, and the fact that it is a requirement for some government
- software. For the same reasons as in (4) above, PLEASE refrain from
- posting a response to these, unless you feel there is something of
- *significant* importance that you can contribute. Posts containing
- factual corrections are probably OK, but posts like "Well, I've used Ada
- on many projects, and all have been very successful" accomplish nothing.
- If you are really dead-set on driving your point home to the poster,
- do it via email.
-
- 6) Where can I get a public domain Ada compiler?
-
- There is currently no public domain Ada compiler available. However,
- there is an interpreter, and a compiler is in the works:
-
- (from Michael Feldman <mfeldman@cs.washington.edu>)
- While there is no PD 'compiler', Ada/Ed is available, which is an
- Ada interpreter. It is available for PC's, Unix-based machines, Amiga,
- and Atari systems. Excerpt from the Ada/Ed README:
-
- Ada/Ed is a translator-interpreter for Ada. It is intended as a teaching
- tool, and does not have the capacity, performance, or robustness of
- commercial Ada compilers. Ada/Ed was developed at New York University, as
- part of a long-range project in language definition and software
- prototyping. The project produced the first validated translator for
- Ada, in the form of an executable definition of the language written in
- SETL. The SETL system served as design document and prototype for the C
- version being released today.
-
- Ada/Ed was last validated under version 1.7 of the ACVC tests. Therefore
- it is not currently a validated Ada system, and users can expect to
- find small discrepancies between Ada/Ed and currently validated compilers.
-
- Apart from the 100-odd tests of ACVC 1.11 that Ada/Ed currently fails,
- the major deficiency of the system is that, being an interpreter, it
- does not implement most representation clauses, and thus does not
- support systems programming close to the machine level.
-
- GNU is officially working on a free Ada compiler:
- (from schonber@acf3.NYU.EDU (Ed Schonberg))
- The Computer Science Department of the Courant Institute of Mathematical
- Sciences at New York University is pleased to announce that it has received
- a contract from the Ada/9X Project Office to develop a GNU/Ada system.
- The work is being cosponsored by DARPA and the Ada Joint Project Office,
- under the direction of Christine M. Anderson.
-
- The project involves the implementation of a highly efficient compiler
- system for the Ada language. The compiler is to be an integral part
- of the GCC system, distributed by the Free Software Foundation.
- Richard Stallman, head of the FSF, is cooperating closely with NYU to
- ensure that the new Ada component will fit smoothly into GCC.
- GNU/Ada will be distributed as a standard part of the GCC system.
-
- The project is under the direction of Professors Robert B. K. Dewar and
- Edmond Schonberg. The design team includes members of the NYUADA project
- as well as GCC designers. Bernard Banner, Franco Gasperoni,
- Brett Porter and Gail Schenker have participated in various aspects of the
- design and implementation of Ada/Ed. Richard Kenner has retargetted the GCC
- backend to several modern RISC architectures. Sam Figueroa, Laurent Bardet
- and several graduate students will participate in the design and
- implementation of selected modules of the run-time. Finally, Jean-Pierre
- Rosen, one of the original designers of Ada/Ed, will be acting as a
- consultant in the area of tasking. Collectively, this group represents
- over a hundred person-years of experience in Ada implementation and
- compiler technology.
-
- The project has an opening for one additional senior staff person.
- Substantial experience in compiler technology is required, as well as
- fluency in Ada. Those interested should send e-mail to dewar@cs.nyu.edu
- or schonberg@cs.nyu.edu.
-
- The main goal of the project, nicknamed GNAT (GNU NYU Ada Translator)
- is to provide a free implementation of Ada/9X, the new version of Ada
- currently being designed. As is well-known, the name Ada/9X reflects the
- fact that the completion date for its standardization is not yet known,
- although it is expected that X will be 3 or 4. GNAT will implement
- as much as possible of the Ada/9X design over the 18 month duration of the
- project; it is anticipated that all the important functionality
- of Ada/9X will be covered. The project does not include any commitment
- to formal validation, since neither the approved standard, nor the
- validation suite will be available in time. Instead, the objective is to
- provide to the Ada community, in the most timely fashion, a reasonably
- complete implementation distributed with full sources under the standard
- GNU public licence. The system will allow implementors, educators, and
- software professionals to experiment with the new language at the earliest
- possible time.
-
- Since ANSI Ada/83 is, with very few exceptions, a subset of
- Ada/9X, the GNU/Ada system will be able to process and correctly
- execute Ada/83 programs as well as Ada/9X programs. Two major
- releases of the system are scheduled, at staged levels of functionality:
- one in June 1993, and the second at the end of calendar 1993.
-
- We are establishing an external mailing list for distribution of GNAT
- documents and design information. If you would like to be on
- this distribution list, please send mail to gnat-request@cs.nyu.edu.
-
- 7) Is Ada a registered trademark of the US government?
-
- (from the AdaIC)
- Prior to November 30, 1987, the name "Ada" was a registered trademark. In
- the December 1987 issue of the Ada Information Clearinghouse Newsletter, Ms.
- Virginia Castor, then Director of the Ada Joint Program Office (AJPO),
- announced that the Department of Defense would thereafter rely on a
- certification mark instead of a trademark.
-
- (The certification mark is a Pentagon-shaped symbol with a "Validated Ada"
- message, and can be seen on the documentation of validated Ada compilers.)
-
- The following is the text of the 1987 AJPO announcement.
-
- From the Director, AJPO
-
- The Ada Joint Program Office has announced that the Federal registration of
- Ada as a trademark will not be maintained after November 30, 1987.
-
- Under the rules for trademark registrations, the owner of a Federally
- registered trademark must file an affidavit after the mark has been
- registered for five years, but before the sixth anniversary of registration
- in order to keep its Federally recognized status. A legal representative
- of the AJPO explained at a meeting of the Ada Board on October 27, 1987,
- that a decision was made over a year ago to allow the registration to lapse.
-
- A trademark is a word, name, symbol, or device adopted and used by a
- manufacturer or merchant to identify his goods, to distinguish them from
- those manufactured and sold by others, and to indicate the source of the
- goods (see Title 15 United States Code section 1127). The AJPO adopted Ada
- as a trademark in 1979 and first used it on computer programs and literature
- associated with computer programs on May 8, 1979. The primary reason for
- obtaining Federal recognition of the trademark use was to be able to police
- the use of the term Ada and assure that it was not used to describe any
- unauthorized subsets or supersets of the Ada computer programming language.
- The AJPO has freely granted licenses to use the Ada mark to persons
- complying or agreeing to comply with certain trademark guidelines.
-
- In July of 1986, the AJPO realized that, in view of the widespread use of
- the term Ada referring to the Ada computer programming language rather
- than a specific program or manual from the AJPO or a licensee, the law
- provided a method more appropriate than a trademark for recognizing the
- preservation of the integrity of the Ada language. The same section of the
- United States Code that defines a trade mark also defines another type of
- mark called a "certification mark." Such a mark may be used to certify
- "quality, accuracy, or other characteristics" of goods or services.
-
- In order to be a validated Ada compiler, a compiler must pass an extensive
- suite of programs called the Ada Compiler Validation Capability (ACVC). The
- AJPO has adopted a certification mark to show that a compiler has passed the
- ACVC and is a validated compiler or a compiler derived from a validated base
- compiler as defined in the Ada Compiler Validations Procedures and
- Guidelines (version 1.1 of which was issued in January 1987). The
- certification mark may also be used on certain literature accompanying or
- documenting a validated compiler. Information concerning the proper use
- of the certification mark was distributed to interested parties during the
- summer of 1987.
-
- 8) I have seen the language name capitalized as ADA, as well as Ada. Which
- is right?
-
- The correct capitalization is Ada. Using all-caps usually implies an
- acronym, and we are not talking about the American Dental Association :).
-
- 9) What is Ada 9X?
-
- Ada 9X refers to the revised version of Ada 83, the current ANSI/ISO
- standard. The Ada 9X Project Office is responsible for the revision,
- and is working closely with the international community to ensure it
- retains its ISO status. The Ada 9X process is very open. Volunteer
- Reviewers are welcome and should contact ada9x-vr@ajpo.sei.cmu.edu.
- Many draft documents are on-line on the Ada 9X bulletin board, 1-800
- Ada9X 25. For further information contact the Ada 9X Project Office,
- PL/VTET, Kirtland AFB New Mexico 87117-6008.
-
- Ada 9X includes three major areas of enhancement: support for object-
- oriented programming, programming-in-the-large, and realtime systems.
-
- A great deal of attention is being focused on transitioning to Ada 9X.
- The validation test suite will be available early (in draft form prior
- to ANSI/ISO approval with official release 3 months after ANSI/ISO
- approval). However for a two year period vendors will be able to
- focus on enhanced areas of the language that their customer base wants
- first ie., the first validation test suite will be modularly constructed
- Vendors are also being encouraged to release beta-versions of their
- Ada 9X implementations prior to validation.
-
- There will also be a GNU Ada 9X compilation system available in late
- 1993.
-
- 10) What is Anna, and where can I get it?
-
- Anna is a language for formally specifying Ada programs. It extends Ada
- with various different kinds of specification constructs from ones as
- simple as assertions, to as complex as algebraic specifications. We have
- implemented a whole lot of tools for Anna including:
-
- 1. The standard DIANA extension packages, parsers, pretty-printers
-
- 2. Semantic checker (very similar to standard semantic checkers for
- programming languages)
-
- 3. Specification analyzer - this is a tool used to test a specification
- for correctness before a program based on the specification is written
-
- 4. Annotation transformer - this transforms Anna specification constructs
- into checks on the Ada program that is developed based on the
- specification. We are currently in the process of enhancing this tool
- so that it can handle at least all the legal Ada programs in the ACVC
- test-suite.
-
- 5. Runtime debugger - The instrumented program output by (4) can be run
- with a special debugger that allows program debugging based on
- formal specifications.
-
- All tools have been developed in Ada and are therefore extremely portable.
- Anna has been ported to many platforms, details of which can be obtained
- from the person who handles Anna releases. You can send mail to
- anna-request@anna.stanford.edu for answers to such questions. Actually,
- we also have a mailing list - anna-users@anna.stanford.edu. Send mail to
- the earlier address if you want to get on this list.
-
- One could view Anna and its toolset as a *very* significant enhancement
- of assertions that are provided in languages such as C (using the assert
- statement). The enhancements are in the form of both (1) many more high
- level specification constructs; and (2) more sophisticated tool support.
-
- However, there are those who would not even wish to compare Anna with
- C assertions! :-)
-
- The Anna tools may be found on the machine anna.stanford.edu in the
- anonymous ftp directory pub/anna.
-
- 11) What is DRAGOON, and where can I get it?
-
-
- DRAGOON is a language, implemented as an Ada preprocessor (ie. generates
- pure Ada). DRAGOON supports the development of Ada in a truly object-
- oriented manner, including complete support for multiple inheritance. A
- very nice feature of DRAGOON not found in many OO languages is the concept
- of "behavioral" inheritance. This allows you to keep the concurrent
- behavior of object separated from the object class hierarchy.
-
- The book by Colin Atkinson:
-
- "Object-Oriented Reuse, Concurrency and Distribution: An Ada-Based
- Approach", ACM Press, 1991, ISBN: 0201565277
-
- is very well written and describes the language succintly and
- completely.
-
- For a copy of the preprocessor, you can contact:
-
- Mr. Andrea Di Maio
- TXT Ingegneria Informatica S.p.A.
- Via Socrate, 41
- 20128 Milan, ITALY
- 0039-2-27001001
-
- 12) Does anyone have a list of commercial Ada projects?
-
- The AdaIC maintains a list of known Ada projects, both commercial and
- government-related. Details on contacting the AdaIC are below.
-
- 13) Are there versions of lex and yacc that generate Ada code?
- The Arcadia project produced aflex and yacc, that are written in Ada
- and produce Ada code. These can be found in the STARS repository
- (source.asset.com -- see below), as well as other sites.
-
- 14) What ftp sites exist that contain information about Ada or Ada source?
-
- Ada Software Repository: wsmr-simtel20.army.mil
- Internet address: 192.88.110.20
- Mirror of Ada Software Repository: wuarchive.wustl.edu
- Internet address: 128.252.135.4
- AJPO and AdaIC repository: ajpo.sei.cmu.edu
- Internet address: 128.237.2.253
- Source for aflex and ayacc: liege.ics.uci.edu (~ftp/pub/irus)
- Internet address: 128.195.1.5, 128.195.13.1
- European Repository: cnam.cnam.fr
- Internet address: 192.33.159.6
- STARS(Software Technology for Adaptable, Reliable Systems): source.asset.com
- Internet Address: 192.131.125.10
- Unisys/STARS source: stars.rosslyn.unisys.com
- Internet Address: 128.126.164.2
-
- 15) What organizations exist that deal with Ada and Ada issues? (Long)
-
- Ada Joint Program Office (AJPO)
- NOTE: I could put in what I think they do, but I would rather get something
- from the source. Any input would be greatly appreciated.
-
- Ada Information Clearinghouse (AdaIC)
- (from Michele L. Kee <adainfo@ajpo.sei.cmu.edu>)
- The Ada Information Clearinghouse (AdaIC) provides a full spectrum of
- information on Ada to anyone interested in finding out more about the
- programming language. The AdaIC can be reached at (800) AdaIC-11 or
- (703) 685-1477.
- IIT Research Institute operates the AdaIC for the Ada Joint Program Office.
- The AdaIC publishes a quarterly newsletter, which contains current
- news, Ada conference reports, announcements from the Ada Joint Program
- Office (AJPO) Director, and articles on projects using Ada. If you
- would like to receive a copy of the AdaIC newsletter, please call and
- request a subscription. There's no charge.
- The AdaIC also regularly updates and publishes more than 70 separate
- information flyers. Flyer topics include:
- Ada Validated Compilers
- Ada News and Current Events
- Ada Usage
- Ada 9X Project
- On-line sources of Ada Information
- Ada Bibliographies
- Ada Compiler Validation and Evaluation
- Resources for Ada Education and Training
- Ada Software, Tools, and Interfaces
- Ada Regulations, Policies, and Mandates
- Ada Historical Information
- One of the most commonly requested flyers is the Validated Compilers
- List. This list, which is updated monthly, contains Ada compilers that
- have been validated by the AJPO. For the most current information on
- validated Ada compilers, contact the AdaIC.
-
- Special Interest Group Ada (SIGAda):
- NOTE: Another group for which I would like to get a succinct description.
- I would also like to get a list of all the 'official' WG's under SIGAda,
- and brief descriptions of each. Anyone care to volunteer?
-
- ISO Working Group 9 (ISO-IEC/JTC1/SC22/WG9):
- This is a working group in ISO that deals with Ada. Within it are several
- Rapporteur (rap) groups:
- (from Goodenough@SEI.CMU.EDU)
- Ada Rapporteur Group (ARG): This is the group responsible for
- evaluating comments on the Ada standard. Officially, the group is
- only developing a technical report addressing comments and questions
- concerning the ISO standard for Ada. (Arcane ISO rules prevent the
- ARG or WG9 from issuing "official" interpretations of a standard.) In
- practice, when a response to a comment is approved by WG9, the
- response is taken into account by the Ada Validation Office and
- affects the test suite. The documents containing comments on the
- standard and ARG responses are called "Ada Commentaries" and are given
- numbers of the form AI-ddddd/vv, where vv is a version number.
-
- Comments and questions about the Ada standard should be sent to
- ada-comment@ajpo.sei.cmu.edu, using the format specified in the Ada
- standard. You can receive e-mail notification of an update to a
- commentary (optionally including the text of the commentary) by
- sending a request to ada-comment@ajpo.sei.cmu.edu. Commentaries are
- generally updated only a few times each year. The text of all
- commentaries is available by anonymous ftp from the AJPO site in the
- account public/ada-comment. A detailed discussion of ARG procedures
- and the format of commentaries can be found in the ada-comment account
- in the file arg-procedures.doc. A reformatted copy of the Reference
- Manual that includes WG9-approved commentaries is available from Karl
- Nyberg (karl@grebyn.com).
-
- (from emery@d74sun.mitre.org (David Emery))
- Uniformity Rapporteur Group (URG): Responsible for evaluating Uniformity
- Issues (UI's). UI's specify/recommend specific choices for the compiler
- implementor, where the language permits implementation freedom. The
- "canonical example" is UI-8, on integer types. This UI recommends that
- integers be at least 32 bits, and provides names for the other
- predefined integer types. The goal of the URG and the UI's is to
- further Ada portability by providing uniform implementations of
- implementation-dependent features commonly used by Ada applications.
-
- CRG: Character Rapporteur Group - International Character Sets
- RRG: Real-Time Rapporteur Group - ExTRA
- NRG: Numerics Rapporteur Group - NUMWG packages
- SRG: SQL Interfaces Rapporteur Group - SAMeDL
- IRG: Information Systems Rapporteur Group - Decimal Arithmetic
- XRG: Ada 9X Rapporteur Group
-
- 16) What cheap (<500$) Ada compilers are available?
-
- Alsys (US pricing only):
- FirstAda for 286 DOS is $595. It'll run on 286 and higher, and will
- generate applications for any x86 PC. Comes with a full toolset.
- Alsys does run specials on it periodically. Call Scott Dorman at
- (617) 270-0030 for more info.
- Alsys offers the same compilation system for $144 to qualified educational
- institutions under its LEAP program. The program also offers substantial
- educational discounts on other Alsys products, as well as site license
- arrangements. Contact Kathy Ruggiero at (617) 270-003 for more info.
-
- 17) Are there any dialup BBS systems that deal with Ada?
-
- AdaIC BBS: (US)703-614-0215 AUTOVON: 224-0215
- (from olender@CS.ColoState.EDU (Kurt Olender))
- AdaNet BBS: This is a free service that maintains e-mail connections for
- people not on the internet, an Ada source code repository, and a
- selection of other on-line Ada-related documents. It is sponsored by
- NASA. Call 800-444-1458 to register for access.
-
- (from Susan Carlson <carlsons@ajpo.sei.cmu.edu>)
- Naval Computer Telecommunications Command
- Phone Number: 804-444-7841
-
- Software Technology Support Center (STSC) BBS
- Phone Number: 801/777-7553 or DSN 458-7553
- Baud: 2400, 1200, 300
- Bits: 8
- Parity: None
- Stop Bits: 1
-
- PIWG Ada Benchmarks BBS
- Phone Number: 301/765-5555
-
- AFSC MCCR Ada - Air Force Policy
- Phone Number: 301/735-8124
-
- Embedded Systems Programming Magazine BBS
- Phone Number: 415/905-2689
-
- Journal of Pascal, Ada, Modula2 (JPAM) Magazine BBS
- Phone Number: 415/967-7241
-
- Ada Language System/Navy
- Phone Number: 202/342-4568
- Baud: 2400/1200/300
- Bits: 8
- Parity: None
- Stop Bits: 1
-
- 18) Does anyone know where I can get X bindings for Ada?
- This question turns out to be pretty darn hard to answer easily. There are
- at least 3 variables that need to be filled:
- 1) platform where you are going to be running.
- 2) compiler you would like to use.
- 3) Level/flavor of X you would like to run (ie just need bindings to
- Xlib, want Openlook as opposed to Motif, etc).
- Once you fill all 3 of the above, then you can start to get answers. In
- order to keep the answer brief, I am simply going to list companies that
- offer such products, and locations where free versions are available.
-
- Before I give the list, I think a little history is in order. The first
- Xlib bindings that were publically available were done by SAIC for STARS.
- This implementation had many bugs, but it was there, and it was free.
- I believe that this version was eventually withdrawn from the STARS
- repository, and has now been replaced with a better one. In addition,
- SAIC has done an Xt implementation based on these Xlib bindings (also for
- STARS).
- NOTE: the above description may well be inaccurate, and I welcome corrections.
-
- Now, for the list.
- NOTE: this list is currently "off the top of my head", and I welcome the
- addition of details and/or corrections. I currently don't have time to go
- back through the comp.lang.ada archives to get full contact info on the
- companies I am listing below. I am counting on their vigilance to see the
- FAQ and send me info
-
- First off, there is a pretty complete list of available bindings
- for X as well as other stuff at the Ada IC.
- site: ajpo.sei.cmu.edu
- location: /public/ada-info/bindings.hlp.08Jun92
- access: anonymous FTP
-
- Free versions:
- STARS: bindings to Xlib and Xt. freely available via ftp on
- stars.rosslyn.unisys.com
-
- Non-free versions:
- SERC: bindings to Xlib/Xt/Motif
- contact: mendal@anna.Stanford.EDU (Geoff Mendal)
-
- Verdix: bindings to Xlib/Xt/Motif
- (Note that bindings to Xview are included with the SunAda
- Sun4 compiler)
- contact: moskow@verdix.com (Paul Moskowitz)
-
- ATC: bindings to Xlib/Xt/Motif
- contact: ???
-
- Telesoft: bindings to Xlib/Xt/Motif (TeleWindows)
- (Note that bindings to Xview are included with the Telesoft
- Sun4 compiler)
- contact: philippe@telesoft.com
-
- X-based GUI (Graphical User Interface) Builders:
- Objective (OIS): Screen Machine
- contact: Phil Carrasco (telno 703-264-1900)
-
- Telesoft: TeleUSE
- contact: philippe@telesoft.com
-
- EVB software: Heragraph
- contact: heragraph@evb.com
-
- Sun Microsystems: DevGuide
- contact: ???
-
- 19) Is there a list of Ada vendor email contacts?
-
- Alsys sales: no email (Scott Dorman)
- Telno: (617) 270-0030
-
- Convex questions: allison@convex.com (Brian Allison)
- Telno: (214) 497-4346
-
- Harris questions: jeffh@ssd.csd.harris.com (Jeff Hollensen)
-
- IBM/Ada questions: malcho@torolab6.vnet.ibm.com (Don Malcho)
- Telno: (416) 448-3727
-
- Intermetrics questions: ryer@inmet.inmet.com (Mike Ryer)
-
- Irvine Compiler Corp (ICC) questions: info@irvine.com
-
- Tartan questions: englert@tartan.com (Susan Englert)
- Telno: (412) 856 3600
-
- Telesoft questions: adasupport@telesoft.com
- Telno: (619) 457-2700
- TeleSoft Sales: marketng@telesoft.com (Philippe Collard)
- Telno: (619) 457-2700
-
- Verdix questions: drew@verdix.com (Drew Johnson)
- Verdix sales information: moskow@verdix.com (Paul Moskowitz)
- Telno: 800-BUY-VADS
-
- 20) Is there a list of good Ada books?
- (from mfeldman@seas.gwu.edu (Michael B. Feldman))
-
- As co-chair of the SIGAda Education Committee, and a denizen of the
- Internet newsgroups, I am often asked to give references for "Ada
- textbooks." This list responds to these many queries. It is far from
- exhaustive, merely a selected list of 26 books being used successfully
- in undergraduate computer science courses.
-
- The six books in the Group 1 are written especially for students without
- programming experience, who are learning Ada as their first language.
- Most of these can also cover at least part of a typical CS2-level
- course. The seven books in Group 2 use Ada as their language of
- discourse but are "subject-oriented:" data structures, file structures,
- compilers, comparative languages. The thirteen books in Group 3 are
- either "Ada books" focusing on the language features or more general
- books that use Ada, at least in part, but do not fit obviously into a
- standard curriculum "pigeonhole."
-
- I invite you to add to the list. Please write your annotated entry in
- the form I have used here and write or e-mail it to me. I will include
- it in my next version and credit you as a co-compiler of the list.
-
- Disclaimers: I wrote two of the texts listed here; I hope the
- annotations are impartial enough. And any annotated bibliography is
- selective and opinionated. Your mileage may vary.
-
- Group 1: Books Suitable for a First Course in Programming
-
- Bover, D.C.C., K.J. Maciuas, and M.J. Oudshoorn.
- Ada: A First Course in Programming and Software Engineering.
- Addison-Wesley, 1992.
- This work is, to our knowledge, the first Ada book to emerge from
- Australia, from a group of authors with much collective experience in
- teaching Ada to first-year students. A number of interesting examples
- are presented, for example, an Othello game. The book is full of gentle
- humor, a definite advantage in a world of dry and serious texts. In the
- book's favor is the large number of complete programs. On the other
- hand, it is rather "European" in its terseness; American teachers may
- miss the pedagogical apparatus and "hand-holding" typically found in
- today's CS1 books. Generic units are hardly mentioned.
-
- Culwin, F. Ada: a Developmental Approach.
- Prentice-Hall, 1992.
- This work introduces Ada along with a good first-year approach to
- software development methodology. Much attention is paid to program
- design, documentation, and testing. Enough material is present in data
- structures and algorithm analysis is present to carry a CS2 course. A
- drawback of the book is that the first third is quite "Pascal-like" in
- its presentation order: procedures, including nested ones, are presented
- rather early, and packages are deferred until nearly the middle of the
- book. This is certainly not a fatal flaw, but it will frustrate teachers
- wishing a more package-oriented presentation. The programs and solutions
- are apparently available from the author.
-
- Feldman, M.B., and E.B. Koffman.
- Ada: Problem Solving and Program Design.
- Addison-Wesley, 1991.
- This work combines the successful material from Koffman's CS1 pedagogy
- with a software-engineering-oriented Ada presentation order. Packages
- are introduced early and emphasized heavily; chapters on abstract data
- types, unconstrained arrays, generics, recursion, and dynamic data
- structures appear later. The last five chapters, combined with some
- language-independent algorithm theory, can serve as the basis of a CS2
- course. A diskette with all the fully-worked packages and examples
- (about 180) is included; the instructor's manual contains a diskette
- with project solutions.
-
- Savitch, W.J. and C.G. Petersen.
- Ada: an Introduction to the Art and Science of Programming.
- Benjamin/Cummings, 1992.
- This is a straightforward adaptation of the well-known Savitch Pascal
- books. Ada is introduced in a Pascal-like order, with subtypes and
- packages introduced halfway through the book. This is purely a CS1 book.
- The final chapter covers dynamic data structures. There is no coverage
- of unconstrained array types; generics are introduced at the halfway
- point to explain Text_IO, then dropped until the final chapter. The
- authors intended this book to provide a painless transition to Ada for
- teachers of Pascal; one wishes they had taken advantage of the chance to
- show some of the interesting Ada concepts as well. Program examples from
- the text are available on disk, but only as part of the instructor's
- manual; a solutions disk is available for a fee from the authors.
-
- Skansholm, J. Ada from the Beginning.
- Addison Wesley, 1988.
- This book was one of the first to use Ada with CS1-style pedagogy.
- There are excellent sections on the idiosyncracies of interactive I/O (a
- problem in all languages), and a sufficient number of fully-worked
- examples to satisfy students. Generics, linked lists and recursion are
- covered at the end; there is no tasking coverage, but one would not
- expect this at CS1-level.
-
- Volper, D., and M. Katz. Introduction to Programming Using Ada.
- Prentice-Hall, 1990.
- This book uses a heavily "spiraled" approach to Ada, and is designed
- for a 2-semester course, covering nearly all of Ada eventually. There
- are lots of fully-coded examples, and good pedagogical sections on
- testing, coding style, etc. If you like spiraling, you'll like this. The
- down side is that you can't find all you need on a given subject in one
- place. It's at the other end of the scale from the "Ada books" that
- follow the Ada Language Reference Manual (LRM) order.
-
-
- Group 2: Other Books Intended for Undergraduate Courses
-
- Ben-Ari, M. Principles of Concurrent and Distributed Programming.
- Prentice-Hall 1990. (OS/concurrency)
- In my opinion, this is the best introduction to concurrency on the
- market. Ada notation is used for everything, but the focus is on
- concurrency and not on Ada constructs per se. I liked the CoPascal
- notation of the first edition better, but this book is still great. A
- software disk is promised in the preface; I had to work quite hard to
- get it from the publisher, which finally had to express-ship it from
- England. The software comes with a tiny Ada-ish interpreter, complete
- with Pascal source code, adapted from Wirth's Pascal/S via CoPascal.
- There are also some real Ada programs, most of which I've tested and
- found correct and portable.
-
- Feldman, M.B. Data Structures with Ada.
- Prentice Hall, 1985 (now distributed by Addison-Wesley).
- (CS2/data structures)
- This book is a reasonable approximation to a modern CS2 book: "big O"
- analysis, linked lists, queues and stacks, graphs, trees, hash methods,
- and sorting, are all covered. The Ada is a bit old-fashioned, especially
- the lack of generics; the book was published before compilers could
- handle generics. The packages and other programs are available free from
- the author. The book is currently under revision with Addison-Wesley and
- should appear in 1993.
-
- Fischer, C., and R. LeBlanc. Crafting a Compiler.
- Benjamin Cummings, 1988. (compilers)
- This book uses Ada as its language of discourse and Ada/CS, a usefully
- large Ada subset, as the language being compiled. If you can get the
- "plain Pascal" tool software by ftp from the authors, you'll have a good
- translator-writing toolset. Skip the Turbo Pascal diskette version,
- which is missing too many pieces to be useful. I've used the book since
- it came out with both undergrad and graduate compiler courses; it
- embodies a good blend of theory and "how it's really done" coding.
- Students like it. The authors have recently published a second version,
- which uses C as its coding language but retains Ada/CS as the language
- being compiled.
-
- Lomuto, N. Problem-Solving Methods with Examples in Ada.
- Prentice-Hall, 1987.(algorithms)
- Inspired by Polya's classic How to Solve It, this book can make a nice
- addition to an Ada-oriented algorithms course. It makes too many
- assumptions about students' programming background to use as a CS1 book,
- and doesn't teach enough Ada to be an "Ada book." But it makes nice
- reading for students sophisticated enough to handle it. I'd classify it
- as similar to Bentley's Programming Pearls.
-
- Miller, N.E. and C.G. Petersen. File Structures with Ada.
- Benjamin/Cummings, 1990. (file structures)
- Designed for a straightforward ACM-curriculum file structures course,
- this book succeeds at what it does. There are good discussions of ISAM
- and B-tree organizations. The software can be purchased a low cost from
- the authors; it seems to approximate in Ada all those C-based file
- packages advertised in programmer-oriented trade publications.
-
- Schneider, G.M., and S.C. Bruell.
- Concepts in Data Structures and Software Development (with Ada
- Supplement by P. Texel).
- West, 1991. (CS2/data structures)
- This work is not, strictly speaking, an Ada book; rather, it is a
- solid, language-independent approach to modern CS2. The language of
- discourse in the book is a Pascal-like ADT language rather like Modula-2
- in style; some examples are coded in legal Pascal. The Ada supplement
- makes it usable in an Ada-based course, but the supplement is rather too
- terse (100 pages of large type) for my taste, and insufficiently well
- keyed to the book chapters. The supplement's effectiveness would be
- greatly enhanced by full translations to Ada of a large number of the
- book's examples.
-
- Sebesta, R.W. Concepts of Programming Languages.
- Benjamin Cummings, 1989. (comparative languages)
- If you've been around for a while, you might remember the late Mark
- Elson's 1975 book by the same title. This is similar: a concept-by-
- concept presentation, with -- in each chapter -- examples taken from
- several languages. There is a nice impartial presentation of Ada along
- with the others. I especially like the chapters on abstraction and
- exception handling. The book covers -- comparatively, of course -- most
- of the lanuages you'd like to see, including C, Lisp, Smalltalk, etc.,
- with nice historical chapters as well. The book is readable; my students
- like it. Our undergraduate and graduate courses both use it as a base
- text.
-
-
- Group 3: A Selection of Other Ada-Related Books
-
- Barnes, J. Programming in Ada. (3rd edition)
- Addison Wesley, 1989.
- Barnes' work has been one of the most popular "Ada books." Some
- students find it hard to see how the pieces fit together from Barnes'
- often fragmentary examples; it is difficult to find complete, fully-
- worked out, compilable programs. A version is available with the entire
- Ada Language Reference Manual bound in as an appendix.
-
- Booch, G. Object-Oriented Design, with Applications.
- Benjamin Cummings, 1991.
- This is a good comparative introduction to the "object-oriented (OO)"
- concept. The first half gives a balanced presentation of the issues in
- OO Design; the second half gives nontrivial examples from Ada,
- Smalltalk, C++, CLOS, and Object Pascal. The author tries to sort out
- the difference between object-based (weak inheritance, like Ada) and
- object-oriented (like C++) languages. My only real complaint is that
- Booch should have worked out at least some of his case studies using
- several different languages, to highlight the similarities and
- differences in the language structures. As it is, each case study is
- done in only a single language. The good news is that the book is
- remarkably free of the hyperbolic claims one sometimes finds in the OO
- literature. I think this book could be used successfully in a second-
- level comparative languages course.
-
- Booch, G. Software Components with Ada.
- Benjamin Cummings, 1987.
- This work is an encyclopedic presentation of data structure packages
- from Booch's OOD point of view. It is great for those who love
- taxonomies. It's not for the faint-hearted, because the volume of
- material can be overwhelming. It could serve as a text for an advanced
- data structures course, but it's thin in "big O" analysis and other
- algorithm-theory matters. The book is keyed to the (purchasable) Booch
- Components.
-
- Booch, G. Software Engineering with Ada. (2nd edition)
- Benjamin Cummings 1987.
- Another of the classical "Ada books." Introduces Booch's OOD ideas.
- Not for use to introduce Ada to novices, in my opinion; there are some
- nice fully-worked case studies but they begin too far into the book,
- after long sections on design, philosophy, and language elements. The
- earlier chapters contain too much fragmentary code, a common flaw in
- books that follow the LRM order.
-
- Bryan, D.L., and G.O. Mendal. Exploring Ada, Volumes 1.and 2.
- Prentice-Hall, 1990 and 1992 respectively.
- This is an excellent study of some of the interesting nooks and
- crannies of Ada; it sometimes gets tricky and "language-lawyerly."
- Volume 2 takes up tasking, generics, exceptions, derived types, scope
- and visibility; Volume 1 covers everything else. The programs are short
- and narrowly focused on specific language issues. If you like Bryan's
- "Dear Ada" column in Ada Letters, you'll like this book. It is certainly
- not a book for beginners, but great fun for those who know Ada already
- and wish to explore.
-
- Burns, A. Concurrent Programming in Ada.
- Cambridge University Press, 1985.
- I used this book for years in my concurrency course. It's roughly
- equivalent to Gehani's book, but its age is showing. Cambridge Press is
- not always easy to get books from, especially in the US.
-
- Cohen, N. Ada as a Second Language.
- McGraw Hill, 1986.
- This book is a quite comprehensive exploration of Ada which
- follows the LRM in its presentation order. My graduate students like it
- because it is more detailed and complete than alternative texts. It's an
- excellent book for students who know their languages and want to study
- all of Ada. There are good discussions of "why's and wherefore's" and
- many long, fully-worked examples.
-
- Gauthier, M. Ada: Un Apprentissage (in French).
- Dunod, 1989.
- I found this an especially interesting, almost philosophical approach
- to Ada. The first section presents Ada in the context of more general
- laguage principles: types, genericity, reusability. The second section
- introduces testing and documentation concerns, as well as tasking; the
- third considers generics and variant records in the more general context
- of polymorphism. For mature Ada students in the French-speaking world,
- and others who can follow technical French, this book can serve as a
- different slant on the conventional presentations of the language. An
- English translation would be a real contribution to the Ada literature.
-
- Gehani, N. Ada: an Advanced Introduction (2nd edition).
- Prentice-Hall, 1989.
- I've always liked Gehani's literate writing style; he knows his
- languages and treats Ada in an interesting, mature, and balanced
- fashion. This book comes with a diskette sealed in the back of the book,
- which is advantageous because the book has numerous nontrivial, fully-
- worked examples.
-
- Gehani, N. Ada: Concurrent Programming (2nd edition).
- Silicon Press, 1991.
- This is a less formal, more Ada-oriented presentation of concurrency
- than the Ben-Ari work. I use both books in my concurrency course; its
- real strength is the large number of nontrivial, fully worked examples.
- Gehani offers a nice critique of the tasking model from the point of
- view of an OS person. The preface promises the availability of a
- software disk from the publisher.
-
- Nyberg, K. The Annotated Ada Reference Manual.(2nd edition)
- Grebyn Corporation, 1991.
- This is the definitive work on Ada legalities, because it presents not
- only the full text of the LRM but also the official Ada Interpretations.
- These commentaries, interleaved with the LRM text, have been approved
- and promulgated by the Ada Board and the various standards
- organizations, and are binding upon compiler developers. I recommend
- this book as an essential volume in the library of every serious Ada
- enthusiast.
-
- Shumate, K. Understanding Ada. (2nd edition)
- John Wiley, 1989.
- This would make a CS1 book if it included more overall pedagogy,
- independent of language constructs. Otherwise it is a nice introduction
- to Ada in fairly gentle steps. Lots of completely worked examples, right
- from the start. Doesn't follow the LRM order, which is great.
-
- Watt, D.A., B.A. Wichmann, and W. Findlay. Ada Language and Methodology.
- Prentice-Hall, 1987.
- This work presents some interesting programming projects, and the
- coverage of design and testing--at the level of a first-year student--is
- quite good. The first third of the book concentrates heavily on
- classical control and data structures, leaving exceptions and packages
- until the "programming in the large" material in the second third. CS2
- teachers will find too little concentration on algorithm analysis. On the
- other hand, tasking and machine-dependent programming are covered. Like
- the Shumate work, this book would make a suitable introduction to Ada for
- students with a semester or so of programming experience; it "jumps in"
- too quickly to satisfy the needs of neophytes and is not well-tailored to
- CS1 or CS2 needs.
-
-
- Send any changes/additions to drew@verdix.com.
-
- Disclaimer: Any and all opinions or statements expressed above are either
- mine, or given to me by someone else.
- ==============================================================================
-