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.
next prev 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