home *** CD-ROM | disk | FTP | other *** search
/ ftp.pasteur.org/FAQ/ / ftp-pasteur-org-FAQ.zip / FAQ / computer-lang / Ada / comp-lang-ada / part2 / text0000.txt < prev   
Encoding:
Text File  |  1996-05-25  |  32.8 KB  |  822 lines

  1. Archive-name: computer-lang/Ada/comp-lang-ada/part2
  2. Comp-lang-ada-archive-name: comp-lang-ada/part2
  3. Posting-Frequency: monthly
  4. Last-modified: 24 May 1996
  5. Last-posted: 22 April 1996
  6.  
  7.                                  comp.lang.ada
  8.                        Frequently Asked Questions (FAQ)
  9.  
  10.     Recent changes to this FAQ are listed in the first section after the table
  11.     of contents. This document is under explicit copyright.
  12.  
  13. This is part 2 of a 3-part posting; part 1 contains the table of contents.
  14. Part 3 begins with question 7; it should be the next posting in this thread.
  15. Part 1 should be the previous posting in this thread.
  16.  
  17.  
  18. 4: Compilers
  19.  
  20. 4.1: Is there a list of validated Ada compilers?
  21.  
  22.    Yes, indeed, there is. The latest list can be retrieved by anonymous
  23.    FTP. For Ada 83, it is in
  24.    ftp://sw-eng.falls-church.va.us/public/AdaIC/compilers/83val/83vcl.txt
  25.    (if the list is updated during the month, the previous one is
  26.    replaced).
  27.  
  28.    And there is also a (non-empty!) list of validated Ada 95 compilers at
  29.    ftp://sw-eng.falls-church.va.us/public/AdaIC/compilers/95val/95vcl.txt
  30.  
  31.  
  32. 4.2: Is there a free Ada compiler (or interpreter)?
  33.  
  34.    There ARE indeed free Ada systems, and there is even choice: Ada/Ed
  35.    for Ada 83, and AVLAda9X and GNAT for Ada 95. A complete list is
  36.    available at
  37.    http://lglwww.epfl.ch/Ada/Resources/Compilers/Free_Ada.html
  38.  
  39.    (Strictly speaking these are free to distribute but NOT
  40.    "public-domain". They are "free"--under copyright conditions known as
  41.    "GNU Copyleft". In short: there is no warranty, and you are allowed to
  42.    copy, modify, and distribute them; but you can't charge anyone for the
  43.    software itself, and if the software (necessarily including source
  44.    code) is further distributed, it must be done under the same
  45.    conditions--i.e. copyable, with sources and modifications, available
  46.    to everyone else, etc.)
  47.  
  48.  
  49.     4.2.1: GNAT, The GNU NYU Ada Translator -- An Ada 95 Compiler
  50.  
  51.    GNAT is a compiler for Ada 95 that accepts Ada 95 source code and
  52.    generates executable (machine) code (GNAT is a compiler and does not,
  53.    repeat: DOES NOT, generate C code). It is based on the Free Software
  54.    Foundation (FSF)'s gcc, a portable compilation system for a variety of
  55.    languages. GNAT generates relatively good code, and is expected to
  56.    improve further as its developers transition from developing initial
  57.    functionality to optimizing it. GNAT supports tasking for many
  58.    computer platforms, but it does NOT support tasking on MS-DOS at this
  59.    time. For tasking with GNAT and a PC platform, consider using other
  60.    operating systems such as Linux or OS/2 (while we're at it, if you use
  61.    DOS, consider using a real operating system :-).
  62.  
  63.    GNAT is available from the New York University host, in directory
  64.    ftp://cs.nyu.edu/pub/gnat. There are versions for UNIX-based systems
  65.    (Sun, DEC, IBM, Next, ...), and versions for DOS, OS/2, and NT 386/486
  66.    systems. Usually the latest version is made available for both Sun
  67.    SPARC (SunOS 4.1) and OS/2 systems.
  68.  
  69.    It is also available in the Public Ada Library (PAL -- formerly the
  70.    Ada Software Repository), under directory
  71.    ftp://wuarchive.wustl.edu/pub/languages/ada/compiler/gnat (Internet
  72.    address: 128.252.135.4). A mirror site of the PAL also carries GNAT,
  73.    directory: ftp://ftp.cdrom.com/pub/languages/ada/compiler/gnat.
  74.  
  75.    You can also get a copy from the AdaIC Bulletin Board. But this is a
  76.    dial-up operation (703/614-0215), and since the files sizes are large,
  77.    connect times may be lengthy. The bulletin board is best used as a
  78.    back-up source for those who don't have Internet/FTP access.
  79.  
  80.       General
  81.  
  82.    (excerpted from "Free Source Code for GNAT 9X Compiler to be Available
  83.    on Internet", by Robert Dewar and Edmond Schonberg, New York
  84.    University, Ada Information Clearinghouse Newsletter August 1993)
  85.  
  86.    The Computer Science Department of the Courant Institute of
  87.    Mathematical Sciences at New York University received a contract from
  88.    the Ada 9X Project Office, under the direction of Christine M.
  89.    Anderson, to develop a GNU/Ada system. The work was co-sponsored by
  90.    ARPA and the Ada Joint Program Office.
  91.  
  92.    The final delivery was a full Ada 95 implementation with as much of
  93.    the core language and annexes implemented as possible.
  94.  
  95.    Here is the official GNAT e-mail address:
  96.  
  97.    report@gnat.com
  98.           This address is to be used specifically to report problems with
  99.           the currently available version of the GNAT system. Please be
  100.           as specific as possible in reporting problems.
  101.  
  102.  
  103.       OS/2 Version
  104.  
  105.    The executables and sources for the OS/2 version of GNAT are split and
  106.    compressed into two files, each of which can fit on one 3.5-inch
  107.    high-density diskette. Although it is possible to install GNAT on an
  108.    OS/2 machine on FAT (MS-DOS-compatble) partition, such an installation
  109.    will not be fully functional. In fact, GNAT does not support
  110.    installations on FAT partitions. You will need about 8.5 MB of free
  111.    disk space after you have copied the appropriate files to your hard
  112.    drive. About half of this amount is taken up by the source code.
  113.  
  114.    In case you want to modify and re-compile GNAT, you will need about 24
  115.    MB of free disk space after you have installed GNAT for OS/2 and
  116.    copied the necessary source files to your hard drive.
  117.  
  118.       Ports
  119.  
  120.    Several ports of GNAT have been produced by volunteers for a number of
  121.    additional platforms (e.g. SPARCStations Solaris 2.1, i386/i486 Linux,
  122.    DECstation (MIPS chip) Ultrix, DOS, SCO Unix). Users should allow time
  123.    for the volunteers to catch up with the new releases.
  124.  
  125.    Note: The DOS version requires installation of DJGPP, DJ Delorie's
  126.    port of GCC, GNU loader (ld), and GNU assembler (as) to DOS. DJGPP
  127.    also includes the GO32 memory extender, which works with both VCPI and
  128.    DPMI standards, which allows working in a Microsoft Window. There is
  129.    information on DJGPP stored together with GNAT.
  130.  
  131.  
  132.     4.2.2: Ada/Ed -- An Interpreter for Ada 83
  133.  
  134.    Ada/Ed is available for PCs, Unix-based machines, Amiga, and Atari
  135.    systems. The Ada/Ed interpreter for Ada 83 is available from the New
  136.    York University host, in directory ftp://cs.nyu.edu/pub/adaed
  137.    (Internet address 128.122.140.24). There you will find a version for
  138.    UNIX-based machines, and a version for 386/486 DOS machines.
  139.  
  140.    Ada/Ed is a translator-interpreter for Ada. It is intended as a
  141.    teaching tool, and does not have the capacity, performance, or
  142.    robustness of commercial Ada compilers. Ada/Ed was developed at New
  143.    York University, as part of a long-range project in language
  144.    definition and software prototyping. The project produced the first
  145.    validated translator for Ada, in the form of an executable definition
  146.    of the language written in SETL. The SETL system served as design
  147.    document and prototype for the C version.
  148.  
  149.    Ada/Ed was last validated under version 1.7 of the ACVC tests.
  150.    Therefore it is not currently a validated Ada system, and users can
  151.    expect to find small discrepancies between Ada/Ed and currently
  152.    validated compilers.
  153.  
  154.    Apart from the 100-odd tests of ACVC 1.11 that Ada/Ed currently fails,
  155.    the major deficiency of the system is that, being an interpreter, it
  156.    does not implement most representation clauses, and thus does not
  157.    support systems programming close to the machine level.
  158.  
  159.  
  160.     4.2.3: GW-Ada/Ed -- a souped-up version of Ada/Ed for 386/486 DOS and
  161.     Macintosh machines
  162.  
  163.    GW-Ada/Ed is available from the PAL, by anonymous FTP. The files are
  164.    located in subdirectories "dos" and "mac" of directory
  165.    ftp://wuarchive.wustl.edu/pub/languages/ada/compiler/adaed/gwu
  166.  
  167.    This project was sponsored by The George Washington University, and in
  168.    part by the United States Advanced Research Projects Agency (ARPA).
  169.  
  170.    This distribution contains the executables for GWAda, which consists
  171.    of the NYU Ada/Ed translator/interpreter system together with an
  172.    integrated editor developed by Prof. Arthur Vargas Lopes of the
  173.    Pontifical University at Porto Alegre, Brazil. Lopes began his work on
  174.    GWAda while he was a doctoral student at The George Washington
  175.    University. There is also in the DOS version a very nice extended
  176.    runtime facility, with interesting kinds of source tracing.
  177.  
  178.    GWAda is being freely distributed at no charge. In the near future the
  179.    developers will make the source code available under the GNU General
  180.    Public License. Source code is not being provided because the system
  181.    is still in the developmental stage. Source code for Ada/Ed itself is
  182.    available from NYU (see above) and from PAL (see questions 9.1 and
  183.    9.3).
  184.  
  185.    Note that under DOS you do not have to use the GWAda integrated
  186.    environment, but can execute the various parts of NYU Ada/Ed from the
  187.    DOS command line, as described in the NYU instructions.
  188.  
  189.    System requirements:
  190.      * IBM PC Compatible, 386 or 486, running MS-DOS or PC-DOS, with at
  191.        least 3.6 MB available extended memory, and at least 5 MB free
  192.        hard-disk space.
  193.  
  194.      * any Mac, System 7, with at least 2.5 MB of RAM, and around 10 MB
  195.        free hard-disk space. Note that the new version is PowerPC native
  196.        and blindingly fast (8-20 times faster than the 1.1 release).
  197.  
  198.  
  199. 4.3: What cheap (<500$) Ada compilers are available?
  200.  
  201.    What follows is absolutely *not* exhaustive, but inexpensive
  202.    compilers are available, and some vendors offer educational discounts
  203.    or free programs for educational sites. Among those offering
  204.    educational discounts are DDC-I, Encore, Harris, IBM, Irvine Compiler,
  205.    OC Systems, Rational, R.R., Tartan, and Thomson Software Products
  206.    (ex-Alsys).
  207.  
  208.    OC Systems: OC Systems will distribute PowerAda free to educational
  209.    institutions wishing to use the product for teaching purposes. Contact
  210.    by email info@ocsystems.com
  211.  
  212.    Rational: Rational provides free software (Rational Apex) to
  213.    accredited educational institutions, including military academies, in
  214.    the United States and Canada. This is under its Software Engineering
  215.    for Educational Development (SEED) program. To receive information on
  216.    the program, send your contact information via e-mail to
  217.    SEED_Info@Rational.com
  218.  
  219.    Rational also offers OpenAda for $99. (Rational Software Corporation,
  220.    2800 San Tomas Expressway, Santa Clara, CA 95051-0951; tel:
  221.    1-800-RAT-1212)
  222.  
  223.    R.R. Software: R.R.'s Janus/Ada Professional Development System --
  224.    80386 MS-DOS -- regularly goes for $500. (R.R. Software, P.O. Box
  225.    1512, Madison, WI 53701; contact: Randall Brukardt 608/251-3133;
  226.    e-mail: rbrukardt@bix.com)
  227.  
  228.    Thomson Software Products (US pricing only): FirstAda for 286 DOS is
  229.    $595. It will run on 286 and higher, and will generate applications
  230.    for any x86 PC. Comes with a full toolset. Thomson Software Products
  231.    does run specials on it periodically. Call Pat Michalowski at
  232.    619/457-2700 for more info.
  233.  
  234.    Thomson Software Products offers the same compilation system for $144
  235.    to qualified educational institutions under its LEAP program. The
  236.    program also offers substantial educational discounts on other Thomson
  237.    Software Products products, as well as site license arrangements.
  238.    Contact Kathy Ruggiero at 617/270-0030 for more info.
  239.  
  240.  
  241. 4.4: Is there an Ada compiler for common machine X/common operating system Y?
  242.  
  243.    There are hundreds of Ada compilers available on the market. Some
  244.    answers for Frequently Asked Compilers are listed below. If your
  245.    specific question is not answered here, check the comprehensive list
  246.    of validated Ada compilers (see 4.1).
  247.  
  248.  
  249.     4.4.1: For the Macintosh
  250.  
  251.    It depends on whether you want a compiler for serious development or
  252.    just a learning tool. The free GW-Ada/Ed-Mac (see question 4.2.3) is
  253.    the latter; it works on all Mac architectures. GW-Ada is a nice
  254.    learning tool with an easy-to-use IDE, but it generates interpreted
  255.    virtual code, not Mac apps.
  256.  
  257.    Other than that there is the Rational (ex-Meridian) OpenAda. OpenAda
  258.    is an Ada 83 compiler with a Toolbox binding and MPW 3.2, but Rational
  259.    has dropped it and is not going to upgrade it to Ada 95. It has one
  260.    limitation for large programs: Packages which contain more than 32K
  261.    bytes of data will compile, but not link. It works with System 7, and
  262.    has been reported both as working and not-working on PowerPCs (maybe
  263.    due to a problem with Inits). It can be ordered from D.C. Heath (price
  264.    Mac version 12 disks plus documentation (35630-1) PC versions Five 3
  265.    1/2" disks plus documentation (35629-8) Nine 5 1/4" disks plus
  266.    documentation (34139-8)
  267.  
  268.    A GNAT for Macintosh is in the works.
  269.  
  270.  
  271.     4.4.2: Native compilers for OS/2
  272.  
  273.    There are several good fully validated compilers. E.g. Thomson
  274.    Software Products (ex-Alsys) has one, and has a partial Ada 95
  275.    compiler for Windows; RR Software specializes in the Intel x86
  276.    architecture (AETECH repackages and distributes their compilers as
  277.    IntegrAda) -- and they advertise a partial Ada 95 compiler. GNAT is
  278.    available for OS/2.
  279.  
  280.  
  281. 4.5: How can I contact Ada compiler vendors?
  282.  
  283.    Here is a non-exhaustive list (possibly out-of-date, for the moment)
  284.    of email and phone contacts for questions and/or sales.
  285.  
  286. Active Engineering Technologies, Inc.
  287.   WWW http://www.pcada.com/pcada/
  288.   sales
  289.     email: ada_info@pcada.com
  290.     Tel: (619) 414-9001
  291.     Fax: (619) 414-9192
  292.  
  293. Ada Core Technologies (ACT)
  294.   WWW http://www.gnat.com/
  295.   questions
  296.     email: support@gnat.com
  297.     Tel: (212) 620-7300
  298.     Fax: (212) 807-0162
  299.  
  300. AETECH, Inc.: see Active Engineering Technologies
  301.  
  302. Alsys: see Thomson Software Products
  303.  
  304. Convex
  305.   WWW http://www.convex.com/
  306.   questions
  307.     allison@convex.com (Brian Allison)
  308.     Tel: (214) 497-4346
  309.  
  310. Cray
  311.   WWW http://www.cray.com/
  312.   questions
  313.     det@cray.com (Dave Thersleff)
  314.     Tel: (612) 683-5701
  315.   sales
  316.     svc@cray.com (Sylvia Crain)
  317.     Tel: (505) 988-2468
  318.  
  319. DEC
  320.   WWW http://www.digital.com/home.html
  321.  
  322. DDC-I
  323.   WWW http://www.dknet.dk/ddci/
  324.   sales
  325.     sale@ddci.dk
  326.     Tel: (602) 275-7172
  327.     Tel: +45 45 87 11 44
  328.  
  329. Green Hills Software Inc.
  330.   WWW http://ghs.com/ghs/html/ghs.html
  331.   questions
  332.     support@ghs.com
  333.   sales
  334.     eric@ghs.com (Eric Schacherer)
  335.     Tel: (805) 965-6044
  336.  
  337. Harris Computer Systems Corporation
  338.   WWW http://www.hcsc.com/
  339.   questions
  340.     jeffh@ssd.csd.harris.com (Jeff Hollensen)
  341.  
  342. IBM: see OC Systems Inc.
  343.  
  344. Intermetrics
  345.   WWW http://www.inmet.com/
  346.   questions
  347.     ryer@inmet.inmet.com (Mike Ryer)
  348.  
  349. Irvine Compiler Corp (ICC)
  350.   questions
  351.     info@irvine.com
  352.  
  353. Meridian: see Rational Software Corporation
  354.  
  355. OC Systems Inc.
  356.   WWW http://ocsystems.com/
  357.   questions
  358.     Email: info@ocsystems.com
  359.   sales
  360.     Tel: (703) 359-8160
  361.     Fax: (703) 359-8161
  362.  
  363. Rational Software Corporation
  364.   WWW http://www.rational.com/
  365.   sales
  366.     product_info@rational.com
  367.     Tel: (408) 496-3600 or (800) RAT-1212
  368.  
  369. R.R. Software
  370.   sales
  371.     Tel: (800) Pc-Ada-4u or (800) 722-3248
  372.     rBrukardt@bix.com (Randy Brukardt)
  373.  
  374. Tartan
  375.   questions
  376.     customer-support@tartan.com
  377.     Tel: (412) 856-3600 (ext 150)
  378.   sales
  379.     info@tartan.com
  380.     Tel: (800) 856-5255 or (412) 856-3600
  381.  
  382. TeleSoft: see Thomson Software Products
  383.  
  384. Thomson Software Products (ex-Alsys)
  385.   WWW http://www.thomsoft.com/
  386.   questions
  387.     adasupport@thomsoft.com
  388.   sales
  389.     marketing@thomsoft.com
  390.     Tel: (619) 457-2700
  391.          (800) 833-0042 (ActivAda only)
  392.  
  393. Verdix: see Rational Software Corporation
  394.  
  395.  
  396.    Note: The AdaIC's Validated Compiler List (see 4.1) now contains
  397.    addresses, usually including e-mail, for compiler-vendor points of
  398.    contact.
  399.  
  400.  
  401. 4.6: Are Ada 95 compilers compatible with Ada 83?
  402.  
  403.    Yes, absolutely. Ada 95 is very close to upwards compatible with Ada
  404.    83, so you will find that an Ada 95 compiler is in practice
  405.    "compatible" with the Ada 83 compiler you have used or are using. The
  406.    compatibility really depends on what kind of code you have written, so
  407.    one should understand what has evolved, what was considered broken and
  408.    is now fixed, as well as what is new. There are two excellent
  409.    documents that will help immensely in that respect:
  410.      * Changes to Ada -- 1987 to 1995, in a Postscript 362KB file:
  411.        ftp://sw-eng.falls-church.va.us/public/AdaIC/standards/95lrm_rat
  412.            /v6.0/chg83.ps
  413.        also available in a text-only 207KB file:
  414.        ftp://sw-eng.falls-church.va.us/public/AdaIC/standards/95lrm_rat
  415.            /v6.0/chg83.doc
  416.  
  417.      * Ada 9X Compatibility Guide, by Bill Taylor, in directory
  418.        ftp://sw-eng.falls-church.va.us/public/AdaIC/docs/compat-guide
  419.  
  420.  
  421.    Furthermore, GNAT has a -gnat83 switch which enforces most of the Ada
  422.    83 restrictions, and other compilers have similar 95/83 modes.
  423.  
  424.      _________________________________________________________________
  425.  
  426.  
  427. 5: Organizations that deal with Ada and Ada issues
  428.  
  429.  
  430. 5.1: Ada Joint Program Office (AJPO)
  431.  
  432.    The AJPO is part of the U.S. Department of Defense; it was created to
  433.    facilitate the implementation of the DoD's Software Initiative (Ada)
  434.    throughout the Services, and maintain the integrity of the Ada
  435.    language. The AJPO sponsors the AdaIC (see below).
  436.  
  437.    NOTE: The AJPO is scheduled to shut down in 1997. Its functions will
  438.    probably be transferred to other entities.
  439.  
  440.    The address is:
  441.  
  442. AJPO
  443. CODE JEKS
  444. 5600 Columbia Pike
  445. Falls-church, VA 22041
  446.  
  447. phone: (703) 681-2459
  448. email: ajpo@sw-eng.falls-church.va.us
  449.  
  450.    The current staff are:
  451.  
  452.    Chief
  453.           Dr. Charles B. ("Chuck") Engle, Jr. --
  454.           engle1c@sw-eng.falls-church.va.us
  455.  
  456.    Acting AJPO Program Manager
  457.           Ms. Joan McGarity -- mcgarity@sw-eng.falls-church.va.us
  458.  
  459.    Contracts Liaison
  460.           Mr. Gary Shupe -- shupeg@sw-eng.falls-church.va.us
  461.  
  462.  
  463. 5.2: Ada Information Clearinghouse (AdaIC)
  464.  
  465.    The Ada Information Clearinghouse (AdaIC) provides a full spectrum of
  466.    information on Ada to anyone interested in finding out more about the
  467.    programming language. IIT Research Institute operates the AdaIC for
  468.    the Ada Joint Program Office (AJPO).
  469.  
  470.    Their address is:
  471.  
  472. Ada Information Clearinghouse
  473. P.O. Box 1866
  474. Falls Church, VA 22041
  475.  
  476. phone: (703) 681-2466
  477. fax:   (703) 681-2869
  478. or
  479. (800) Adaic 11 (232-4211)
  480.  
  481. email: adainfo@sw-eng.falls-church.va.us
  482. WWW:   http://sw-eng.falls-church.va.us
  483.  
  484.  
  485.    The AdaIC publishes a quarterly newsletter, which contains current
  486.    news, Ada conference reports, announcements from the AJPO Director,
  487.    and articles on projects using Ada. If you would like to receive a
  488.    copy of the AdaIC newsletter, call and request a subscription. There
  489.    is no charge. The AdaIC also regularly updates and publishes more than
  490.    70 separate information flyers. Flyer topics include:
  491.      * Ada Validated Compilers
  492.      * Ada News and Current Events
  493.      * Ada Usage
  494.      * Ada 9X Project
  495.      * On-line sources of Ada Information
  496.      * Ada Bibliographies
  497.      * Ada Compiler Validation and Evaluation
  498.      * Resources for Ada Education and Training
  499.      * Ada Software, Tools, and Interfaces
  500.      * Ada Regulations, Policies, and Mandates
  501.      * Ada Historical Information
  502.  
  503.  
  504.    One of the most commonly requested flyers is the Validated Compilers
  505.    List. This list, which is updated monthly, contains Ada compilers that
  506.    have been validated by the AJPO. For the most current information on
  507.    validated Ada compilers, contact the AdaIC.
  508.  
  509.    Practically all AdaIC flyers are available via anonymous FTP from
  510.    their host, in directory ftp://sw-eng.falls-church.va.us/public
  511.  
  512.  
  513. 5.3: Association for Computing Machinery's Special Interest Group on Ada (ACM
  514. SIGAda)
  515.  
  516.    SIGAda's bimonthly publication is Ada Letters.
  517.  
  518.    Price for non-members: $55 (Annual ACM membership dues, $82; students,
  519.    $25).
  520.  
  521.    Otherwise it costs $20 per year to ACM members; $10 per year to ACM
  522.    student members.
  523.  
  524.    The address is:
  525.  
  526. Association for Computing Machinery, Inc.
  527. 1515 Broadway
  528. New York, NY 10036
  529. 212/869-7440
  530.  
  531.    SIGAda also has a number of committees and working groups on a variety
  532.    of topics.
  533.  
  534.  
  535. 5.4: ISO Working Group 9 (ISO-IEC/JTC1/SC22/WG9, WG9 for short)
  536.  
  537.    This is a working group that deals with Ada within the International
  538.    Standardization Organization. For more information, you can find
  539.    online information about WG9 at
  540.    http://lglwww.epfl.ch/Ada/Ammo/Associations/WG9.html
  541.  
  542.    There are several Rapporteur (rap) groups with WG9:
  543.      * ARG: Ada Rapporteur Group -- Comments and Interpretations
  544.      * CRG: Character Rapporteur Group -- International Character Sets
  545.      * IRG: Information Systems Rapporteur Group -- Decimal Arithmetic
  546.      * NRG: Numerics Rapporteur Group -- NUMWG packages
  547.      * RRG: Real-Time Rapporteur Group -- ExTRA
  548.      * SRG: SQL Interfaces Rapporteur Group -- SAMeDL
  549.      * URG: Uniformity Rapporteur Group -- Portability through Uniformity
  550.      * XRG: Ada 9X Rapporteur Group
  551.  
  552.  
  553.    Ada Rapporteur Group (ARG):
  554.           This is the group responsible for evaluating comments on the
  555.           Ada standard. Officially, the group is only developing a
  556.           technical report addressing comments and questions concerning
  557.           the ISO standard for Ada. (Arcane ISO rules prevent the ARG or
  558.           WG9 from issuing "official" interpretations of a standard.) In
  559.           practice, when a response to a comment is approved by WG9, the
  560.           response is taken into account by the Ada Validation Office and
  561.           affects the test suite. The documents containing comments on
  562.           the standard and ARG responses are called "Ada Commentaries"
  563.           and are given numbers of the form AI-ddddd/vv, where vv is a
  564.           version number.
  565.  
  566.           Comments and questions about the Ada standard should be sent to
  567.           ada-comment@sw-eng.falls-church.va.us, using the format
  568.           specified in the Ada standard. You can receive e-mail
  569.           notification of an update to a commentary (optionally including
  570.           the text of the commentary) by sending a request to
  571.           ada-comment@sw-eng.falls-church.va.us. Commentaries are
  572.           generally updated only a few times each year. The text of all
  573.           commentaries is available by anonymous FTP from the AdaIC site
  574.           in the account public/ada-comment. A detailed discussion of ARG
  575.           procedures and the format of commentaries can be found in the
  576.           ada-comment account in the file arg-procedures.doc. A
  577.           reformatted copy of the Reference Manual that includes
  578.           WG9-approved commentaries used to be available from Karl Nyberg
  579.           (karl@grebyn.com), but note that distribution of the Ada 83
  580.           AARM has been transferred by Grebyn Corporation to the Ada
  581.           Resource Association (3.1.1).
  582.  
  583.    Uniformity Rapporteur Group (URG)
  584.           Responsible for evaluating Uniformity Issues (UIs). UIs
  585.           specify/recommend specific choices for the compiler
  586.           implementor, where the language permits implementation freedom.
  587.           The "canonical example" is UI-8, on integer types. This UI
  588.           recommends that integers be at least 32 bits, and provides
  589.           names for the other predefined integer types. The goal of the
  590.           URG and the UI's is to further Ada portability by providing
  591.           uniform implementations of implementation-dependent features
  592.           commonly used by Ada applications.
  593.  
  594.  
  595.      _________________________________________________________________
  596.  
  597. 6: Tools
  598.  
  599. 6.1: Is there an Ada-mode for Emacs?
  600.  
  601.    There are 3 Ada modes for Emacs:
  602.      * the most recent and powerful one is available by FTP in the file
  603.        emacs-ada-mode-2.12.tar.gz in directory ftp://cs.nyu.edu/pub/gnat
  604.  
  605.        This is still work under development but it is already quite
  606.        usable. The main features are:
  607.           + compile and parse the errors (with the cursor at the right
  608.             line AND column)
  609.           + highlight keywords and comments
  610.           + create skeletons for all Ada constructs (both 83 and 9x)
  611.           + goto next (previous) subprogram/package/task
  612.           + goto beginning of syntactic construct
  613.           + name completion (works across file boundaries, if the Xref
  614.             output from gnatf is available)
  615.           + TAB ---> indent (almost always correctly)
  616.           + untabify, remove trailing spaces automatically before saving
  617.           + C-c C-f ---> format subprogram specs in GNAT style
  618.           + and much more to come...
  619.    The 2 main developers are Markus Heritsch (who works under the
  620.        direction of Franco Gasperoni at ENST, Paris) and Rolf Ebert
  621.        (Munich, Germany).
  622.  
  623.      * electric-ada, by Steven D. Litvintchouk of Mitre Corp (available
  624.        from?--NO INFORMATION); and
  625.  
  626.      * gnu-ada mode. Here is a small description of the features of this
  627.        mode:
  628.  
  629.         Compile programs within emacs
  630.                 Run compiler as inferior of Emacs, and parse its error
  631.                 messages. NOTE: I believe that this feature will only
  632.                 work with VADS, but it might have been tailored to work
  633.                 with other compilers.
  634.  
  635.         Ada dired
  636.                 It supplies a form of dired that helps manage the VADS
  637.                 environment, and it adds ADA vads commands into ada mode.
  638.                 Unlike a previous dired-ada implementation, this version
  639.                 uses the existing dired mode functions except where there
  640.                 is unresolvable conflict. Thus, this is more like a minor
  641.                 mode to dired. Very important because on actual version
  642.                 of emacs 19(beta), in fact lemacs (lucid emacs), dired
  643.                 has changed and we can no longer use gnu-ada mode :-(
  644.  
  645.         you can consult the Ada Language Reference Manual (*) during
  646.                 parsing error message.
  647.                 (*)You can get one in e.g. the Public Ada Library.
  648.  
  649.         smart indentation
  650.                 Tries hard to do all the indenting automatically.
  651.                 Emphasizes correct insertion of new code using smart
  652.                 templates.
  653.  
  654.         Smart template commands (bnf)
  655.                 This is essentially a bnf processor/language-sensitive
  656.                 editor. The next message will give you an ada bnf file
  657.                 that you can use within ada-mode to expand nonterminals.
  658.                 But you can roll your own grammars (e.g., your design
  659.                 grammar or an ADL) and put them in *.bnf files ... The
  660.                 BNF rule set is stored as a list of rules.
  661.  
  662.         debugging Ada programs within emacs
  663.                 A facility is provided for the simultaneous display of
  664.                 the source code in one window, while using a.db to step
  665.                 through a function in the other. A small arrow "=>" in
  666.                 the source window, indicates the current line.
  667.  
  668.         Move from procedure to procedure or package to package
  669.  
  670.         tags Ada
  671.  
  672.         and other things ...
  673.  
  674.  
  675.    You can find the gnu-ada mode in where did it go? as well as in the
  676.    PAL, under directory
  677.    ftp://wuarchive.wustl.edu/pub/languages/ada/swtools/emacs/adamode.
  678.  
  679.  
  680. 6.2: Are there versions of lex and yacc that generate Ada code?
  681.  
  682.    The Arcadia project produced the tools aflex and ayacc, both written
  683.    in Ada and producing Ada code. They can be found in directory
  684.    ftp://liege.ics.uci.edu/pub/irus (Internet address: 128.195.1.5,
  685.    128.195.13.1).
  686.  
  687.  
  688. 6.3: Where can I get a yacc/ayacc grammar to read Ada code?
  689.  
  690.    A yacc and lex grammar for Ada 83 is available via FTP from the
  691.    comp.compiler archives at primost.cs.wisc.edu and via e-mail from the
  692.    compilers server at compilers-server@iecc.cambridge.ma.us .
  693.  
  694.    A yacc grammar for Ada 95 is available in file
  695.    ftp://sw-eng.falls-church.va.us/public/AdaIC/standards/95lrm_rat/grammar9x.y
  696.  
  697.    and a lex grammar for Ada 95 is available in file
  698.    ftp://sw-eng.falls-church.va.us/public/AdaIC/standards/95lrm_rat/lexer9x.l
  699.  
  700.  
  701. 6.4: What is Anna, and where can I get it?
  702.  
  703.    Anna is a language for formally specifying Ada programs. It extends
  704.    Ada with various different kinds of specification constructs from ones
  705.    as simple as assertions, to as complex as algebraic specifications. A
  706.    whole lot of tools have been implemented for Anna, including:
  707.     1. The standard DIANA extension packages, parsers, pretty-printers.
  708.     2. Semantic checker (very similar to standard semantic checkers for
  709.        programming languages).
  710.     3. Specification analyzer -- this is a tool used to test a
  711.        specification for correctness before a program based on the
  712.        specification is written.
  713.     4. Annotation transformer -- this transforms Anna specification
  714.        constructs into checks on the Ada program that is developed based
  715.        on the specification. This tool is currently in the process of
  716.        being enhanced so that it can handle at least all the legal Ada
  717.        programs in the ACVC test-suite.
  718.     5. Runtime debugger -- The instrumented program output by the
  719.        annotation transormer can be run with a special debugger that
  720.        allows program debugging based on formal specifications.
  721.  
  722.  
  723.    All tools have been developed in Ada and are therefore extremely
  724.    portable. Anna has been ported to many platforms, details of which can
  725.    be obtained from the person who handles Anna releases. You can send
  726.    e-mail to anna-request@anna.stanford.edu for answers to such
  727.    questions. Actually, there is also a mailing list --
  728.    anna-users@anna.stanford.edu. Send e-mail to the earlier address if
  729.    you want to get on this list.
  730.  
  731.    One could view Anna and its toolset as a *very* significant
  732.    enhancement of assertions that are provided in languages such as C
  733.    (using the assert statement). The enhancements are in the form of both
  734.    (1) many more high level specification constructs; and (2) more
  735.    sophisticated tool support.
  736.  
  737.    However, there are those who would not even wish to compare Anna with
  738.    C assertions! :-)
  739.  
  740.    The Anna tools may be found in directory
  741.    ftp://anna.stanford.edu/pub/anna.
  742.  
  743.  
  744. 6.5: What is DRAGOON, and where can I get it?
  745.  
  746.    DRAGOON is a language, implemented as an Ada preprocessor (i.e., it
  747.    generates pure Ada). DRAGOON is truly object-oriented, including
  748.    complete support for multiple inheritance. A very nice feature of
  749.    DRAGOON not found in many OO languages is the concept of "behavioral"
  750.    inheritance. This allows you to keep the concurrent behavior of object
  751.    separated from the object class hierarchy.
  752.  
  753.    The book by Colin Atkinson, "Object-Oriented Reuse, Concurrency and
  754.    Distribution: An Ada-Based Approach" (ACM Press, 1991, ISBN:
  755.    0201565277), is very well written and describes the language
  756.    succinctly and completely.
  757.  
  758.    For a copy of the preprocessor, contact:
  759.  
  760. Mr. Andrea Di Maio
  761. TXT Ingegneria Informatica S.p.A.
  762. Via Socrate, 41
  763. 20128 Milan, ITALY
  764. phone: + 39-2-2700 1001
  765.  
  766.  
  767. 6.6: Where can I get language translators?
  768.  
  769.    The AdaIC maintains a Products and Tools Database on its bulletin
  770.    board (703/614-0215), and one of the categories is translators. (The
  771.    list of products should not be considered exhaustive; if you wish to
  772.    suggest additions, please contact the AdaIC.) Besides access to the
  773.    database via the bulletin board, you can also call the AdaIC
  774.    (800-AdaIC-11 or 703/685-1477) and ask for a customized search.
  775.  
  776.     Should I?
  777.  
  778.    In addition to all the usual caveats, however, it should also be noted
  779.    that translation itself is a controversial issue.
  780.  
  781.    When a project makes the transition to Ada from some other language,
  782.    one question that arises is whether to translate older code into Ada.
  783.    Among the immediate considerations are how much of the code can in
  784.    fact be translated by a program intended for that purpose, versus how
  785.    much will still require re-coding by hand. And will the translated
  786.    code suffer a significant loss in speed of execution? Further, a
  787.    project must consider whether the translated code will reflect sound
  788.    software engineering and be readily understandable and modifiable. Or
  789.    will the translated code be merely "Fortranized Ada" or "Cobolized
  790.    Ada", or the like, possibly retaining limitations present in the
  791.    earlier code? Portability is also a problem.
  792.  
  793.    The resolution of such issues will require an understanding of the
  794.    earlier code, an appreciation of the similarities and differences
  795.    between its language and Ada, and an evaluation of the translation
  796.    program under consideration.
  797.  
  798.  
  799. 6.7: What is ASIS?
  800.  
  801.    The Ada Semantic Interface Specification is a layered
  802.    vendor-independent open architecture. ASIS queries and services
  803.    provide a consistent interface to information within the Ada Ada
  804.    compilation environment. Thus it is envisioned that tool makers should
  805.    be able to create ASIS clients--shielded and free from the
  806.    implementation details of each Ada compiler vendor's proprietary
  807.    compilation environment and intermediate representation(s).
  808.  
  809.    ASIS Version 1.1.1 is the last version of the ASIS83 (AdaĆ”83) de facto
  810.    industry standard; it was finalized, together with the corresponding
  811.    test suite for ASIS implementations, in June 1994.
  812.  
  813.    The current version of ASIS 95 is ASIS 2.0.E (November 1995). As
  814.    errors, misunderstandings, and clarifications are discovered, the ASIS
  815.    Working Group will release new edited versions of the specification.
  816.  
  817.    For more information, there is an ASIS WWW server at
  818.    http://info.acm.org/sigada/WG/asiswg/asiswg.html
  819.  
  820.    ASIS versions are available in directory
  821.    ftp://sw-eng.falls-church.va.us/public/AdaIC/work-grp/asiswg
  822.