Xref: news-dnh.mv.net comp.os.msdos.djgpp:1763 Path: news-dnh.mv.net!mv!news.sprintlink.net!in1.uu.net!gwu.edu!gwu.edu!not-for-mail From: mfeldman AT seas DOT gwu DOT edu (Michael Feldman) Newsgroups: comp.os.msdos.djgpp Subject: GNAT Ada 95 for GCC; support for same Date: 25 Aug 1995 22:53:17 -0400 Organization: George Washington University Lines: 150 Nntp-Posting-Host: 128.164.9.3 To: djgpp AT sun DOT soe DOT clarkson DOT edu Dj-Gateway: from newsgroup comp.os.msdos.djgpp For some reason I did not see the attached message go by; someone sent it to me by e-mail, suggesting that I might like to respond. I do so after the extracts. This will be just a bit long, so bear with me. > >In article <40n13f$qn7 AT phcoms4 DOT seri DOT philips DOT nl>, W DOT Derks AT nl DOT cis DOT philips DOT com > >(Wiljan Derks) wrote: > > In article <40ke9k$mdb AT freenet DOT vancouver DOT bc DOT ca>, > > rdc AT freenet DOT vancouver DOT bc DOT ca says... > > > > > >Just got GNAT to learn Ada on - and some tutorials. > > >Curious if any other are using the Ada frontend for Djgpp's GCC. > > > {some stuff deleted] > > For everybody using C or C++ right now I can just say: switch to GNAT > > as soon as possible. > Hmm.. contentious statement. Ada is a f***ing HUGE language and takes > quite a while to learn, and GNAT doesn't implement all features (esp. > tasking) on Dos yet. Also, I can't find a published Ada95 reference > manual, which I consider a necessary "at hand" thing for looking up those > constructs. still, an Ada83 one will do in the meantime. > > > > Notice that GNAT is not just a front end but a real compiler. It is linked > > agains the gcc backend however. > indicating that it's not a compiler. One of the papers published by the > team developing GNAT tells you that - the name stands for GNU NYU Ada > Translator. it just turns Ada source code into the required form for the > GCC back end, so it really is just a front end. > Cheers > Richard We at GW have been responsible for the GNAT port to DOS for the last few months, so we are somewhat familiar with it and with Ada 95. First, your point about GNAT not being a compiler but "only" a front end. Naturallly it is. _All_ the GCC compilers are just front ends. C, C++, Objective C, etc. That is, in fact, the whole idea behind GCC - multiple language front ends, multiple machine descriptions in the back end. So GNAT is, in fact, just another GCC compiler (front end, whatever), just like the others. The only difference is that it is not written in C, but in itself, mostly Ada 95 with a bit of C around the edges. This makes no difference for users, only for those who want to build it from sources - you need a GNAT to compile GNAT, so the first version of a port to a new platform is done by cross-compiling. * * * * * * Second - the size of Ada in general - sure, Ada is large, but no larger than other "big" languages like C++ or Modula-3. Since there is no agreed metric for "size" of languages, arguing this point just gets into the sort of religious war I'd like to avoid (on this group, anyway:-)). It is also the case that, as with any large language, there's no need to swallow it all in one gulp. For a list of good texts and other tutorial stuff, see the web page at http://lglwww.epfl.ch/Ada/ or e-mail me. * * * * * * Third - Ada 95 reference manual. If you really want hard copy, you can order it through the Ada Information Clearinghouse. I can give more details on this by e-mail. OTOH, most of us are finding that it's just as well to use the Ada 95 LRM in electronic form. It is available in various forms including ASCII, PostScript (read with GhostScript or print it yourself!), HTML, and Macintosh HyperCard. The best site for this is wuarchive.wustl.edu, in the directory languages/ada. Also check the Ada web site, http://lglwww.epfl.ch/Ada/. There is also a hypertext Ada 95 LRM (not HTML, a homebrewed simple hypertext system) included in the AdaCAPS IDE for GNAT/DOS, released in July. I will post an announcement of this, and how to get an easy-to-install distribution of GNAT and other stuff, in a separate note. In brief, try ftp.gwu.edu, pub/ada/ez2load for all the stuff. The Ada 95 standard, like the Ada 83 one, is just about the only language standard available free on the net and freely copiable. * * * * * * Fourth - tasking in DOS. It is true that the runtime support for tasking under DOS is still under development. Charles Sandmann is involved in this effort, which is trying to put a good threads package into djgpp, for use with GNAT but also with the other GCC languages. A student of mine and another at Florida State (where the GNAT tasking system is produced) are also involved. We hope this will bear fruit before long. Meanwhile, if any of you are running OS/2, the GNAT port for OS/2 does tasking just fine. Pick it up from cs.nyu.edu, pub/gnat. * * * * * * Finally, someone asked in another note whether support is available for a fee for GNAT. The original NYU group that developed GNAT has moved into a "commercial spinoff" called Ada Core Technologies or ACT. This company is built on the cygnus model, to support GNAT specifically. I am not connected with this company; I just know the people.:-) Write to them at report AT gnat DOT com to inquire about support; I'm sure they will be happy to discuss your needs. For your interest: ACT has a fair amount of funding from Silicon Graphics, which has decided that GNAT will be its Ada 95 compiler. SGI is helping ACT get GNAT ready for formal validation (against the government-sponsored test suite), which should happen in the next few months. SGI has also released some really nice (proprietary, not free) CASE tools and other stuff that fits around GNAT on the SGI, and has shown some really wifty virtual-reality-type demos using GNAT and C++ talking to each other. I mention this only to indicate that GNAT has a growing amount of industry support from major companies, and it isn't even quite done.:-) Also, as we know about GCC tools in general, portability of GNAT is quite high, so a validation on one platform means validation on others will not be difficult to accomplish. Because even the unvalidated ports use the identical front end, we can have confidence that GNAT will be a good representation of the intent of the standard, which is what validation is all about. One last point: ACT has reminded everyone that GNAT is and will remain free software under the GPL/LGPL, and will remain freely available with or without support. * * * * * * Sorry for the length of this; I thought I'd put it all in one place. Feel free to get in touch by e-mail if you want more details. We are planning a listproc-based mailing list for general (non-ACT) GNAT users, and will announce its formation here in about 2 weeks. My plan is to let it run like the old djgpp list, then if traffic gets heavy, put out a CFV for a newsgroup. Cheers, all - Mike Feldman ------------------------------------------------------------------------ Michael B. Feldman - chair, SIGAda Education Working Group Professor, Dept. of Electrical Engineering and Computer Science The George Washington University - Washington, DC 20052 USA 202-994-5919 (voice) - 202-994-0227 (fax) - mfeldman AT seas DOT gwu DOT edu (Internet) ------------------------------------------------------------------------ Fight FUD with Fact ------------------------------------------------------------------------ Ada on the WWW: http://lglwww.epfl.ch/Ada/ or http://info.acm.org/sigada/ ------------------------------------------------------------------------