comp.lang.ada
 help / color / mirror / Atom feed
From: dewar@cs.nyu.edu (Robert Dewar)
Subject: Re: Building an Ada compiler
Date: 1996/06/28
Date: 1996-06-28T00:00:00+00:00	[thread overview]
Message-ID: <dewar.835969152@schonberg> (raw)
In-Reply-To: 4r023h$jt2@newsbf02.news.aol.com

David said

>Some friends and I have a crazy idea.  We want to build an Ada 95 compiler
>targeted for the Macintosh computer (without requiring Unix, like
>GNAT/GCC).  To that end, I would like to ask the Ada and compiler experts
>here (and anyone else who wishes to respond) for some information,
>including, just how insane are we?

  If you are proposing to build a complete Ada 95 compiler, then if you
  have an appropriate group of experienced compiler experts, a typical
  estimate is in the range of 20-50 person years of work (much more than
  that has gone into the GNAT compiler if you include the whole compiler).
  Since below you say that none of you are compiler experts, likely you
  are not proposing such a project (or if you are, perhaps insane might
  be an appropriate adjective :-)

  What might make sense is to start with GNAT and modify it to run under
  E.T.O. rather than under Unix. The point is that you can't build a
  compiler that runs directly on System-7, certainly not if it is based
  on GNAT, and in general some kind of command line interface is really
  needed for a usable compiler.

  For the GNAT/Mac project we considered the alternatives. We required a
  command line processor that could co-exist with System-7, so that ruled
  out, for example, the new MkLinux port. Certainly MPW and its successor
  ETO is a possible choice, but we preferred Macten for the following
  reasons:

     Machten will be much easier to obtain. Tenon is planning a low cost
     CD ROM that will contain a vesion of Machten sufficient to fully
     support GNAT along with GNAT itself.

     Tenon is actively supporting the effort and working closely with us
     in providing support, such as threads support for the Ada tasking.

     More people are familiar with Unix as a basis for a command line
     environment than MPW or ETO.

     A far richer set of tools is available under the Unix environment
     than under MPW or ETO.

>Self-effacing humor aside, just how big a project is an Ada 95 compiler?
>Those of us planning to work on this project are all Ada software
>engineers with at least seven years of experience, but none of us are
>compiler experts.  I am a pessimist, and feel that the project size
>estimates my friends have come up with are low.  Historical data from
>other projects would be helpful.

>What sources are available to help such an endeavor (other then the AdaIC,
>and Apple)?

   I do not think either AdaIC or Apple will be much help, but the sources
   of the Macten GNAT port will be a very good starting point for such a
   project, and the first step should be to get hold of Machten, and get
   to the point where you can build the current Mac port from sources.
   We can provide a little help for such a project but not much, on the
   other hand, many people have succeeded in porting GNAT to all sorts
   of platforms without much help, and an ETO/Mac port does not seem a
   particularly difficult one, given that you have a good start (which
   for example takes care of most architectural problems).

>How much interest is there for an Ada 95 compiler for the Macintosh that
>does not require Unix (It will initially work under E.T.O., the MPW
>replacement)?  This seems to be a neglected market.  The GNAT-Mac project
>(which requires MachTen, a well-regarded Unix), and the outdated Meridian
>Ada compiler (now in Rational's hands), are the only Macintosh Ada
>compilers I am aware of.

   I note the "initially" here, so perhaps you have in mind producing a
   version that works completely within the System-7 framework. Such a
   system, using e.g. drag-and-drop for compiling, would not be usable
   for large projects, but would be fine for small educational use.
   However, that's a much bigger change.

   Bottom line is that if you rethink your project in terms of a port of
   GNAT, rather than building a new Ada 95 compiler from scratch, then it
   is quite practical, and certainly of interest, since it is good to see
   GNAT ported to as many different operating system environments as
   possible (after all there are nine different ports on the IBM PC, so
   we can certainly have more than one on the Mac).

   One of the nice things about free software, which really means
   freely-available software is precisely that you do not have to
   reinvent the wheel to start a project like this!

Robert Dewar

P.S. the we in the above is the GNAT MAC project, which is ACT, Tenon,
and the folks at McKee consulting working together, see our home page
for further details. 

P.P.S. The total magnitude of the GNAT MAC project is 2-3 person years
of work, partially funded by an AJPO ATIP grant, but of course you would
be able to borrow a lot of this work in your ETO project. On the other
hand this is 2-3 person years from people with a LOT of experience with
GNAT -- it all comes down to exactly what you aim for. The distance
from something that works reasonably to a polished product can be a 
very long one, and for the Machten product, we are definitely trying
for a polished product.





  parent reply	other threads:[~1996-06-28  0:00 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-06-28  0:00 Building an Ada compiler ErkoDJK
1996-06-28  0:00 ` Ray Blaak
1996-06-28  0:00   ` Robert Dewar
1996-07-01  0:00   ` Michael Feldman
1996-06-28  0:00 ` Robert Dewar [this message]
1996-06-28  0:00 ` Robert A Duff
1996-06-28  0:00   ` Robert Dewar
1996-06-28  0:00   ` Raul Barral Tamayo
1996-06-28  0:00     ` Robert Dewar
1996-06-30  0:00     ` Gary McKee
1996-06-28  0:00   ` Ruediger Berlich
1996-06-29  0:00     ` Robert A Duff
1996-07-04  0:00     ` Jens Hansson
1996-06-29  0:00 ` Mark Eichin
     [not found]   ` <4r4c6m$bec@eri1.erinet.com>
1996-06-30  0:00     ` James E. Hopper
1996-06-30  0:00       ` Tucker Taft
1996-06-30  0:00         ` Robert Dewar
1996-07-05  0:00           ` David Emery
1996-07-06  0:00             ` Robert Dewar
1996-07-07  0:00             ` Michael Feldman
1996-06-30  0:00         ` James E. Hopper
1996-07-01  0:00       ` Laurent Gasser
1996-07-02  0:00         ` Arthur Evans Jr
1996-06-29  0:00 ` Tucker Taft
1996-07-01  0:00 ` Ken Garlington
  -- strict thread matches above, loose matches on Subject: below --
1996-07-16  0:00 ErkoDJK
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox