comp.lang.ada
 help / color / mirror / Atom feed
From: Lucretia <lucretia9@lycos.co.uk>
Subject: Re: Implementing an Ada compiler and libraries.
Date: 9 May 2007 20:38:27 -0700
Date: 2007-05-09T20:38:27-07:00	[thread overview]
Message-ID: <1178768307.012381.140530@q75g2000hsh.googlegroups.com> (raw)
In-Reply-To: <wccfy65n2pq.fsf@shell01.TheWorld.com>

On May 9, 9:48 pm, Robert A Duff <bobd...@shell01.TheWorld.com> wrote:
> Presumably by storing information (symbol tables and whatnot) in
> permanent disk files.  If you do that, I think you should design it as a
> _pure_ optimization.  That is, the system should behave exactly as if
> everything is compiled from source every time, except that it's faster.
> Don't mimic the Ada 83 compilers that had a notion of "compiling things
> into the library", where a source file sitting right there in the source
> directory is ignored, unless "compiled into...".

Yes, I have no intention of having to add stuff to the library before
it can compile. I'm looking at a hybrid of what GNAT does combined
with the ability to use precompiled units in binary form.

> If you do this, you need to design a permanent (on disk) representation
> that is small.  I think it's possible, but it's not easy -- the
> "obvious" representation of symbol tables will be 10 times larger than
> the source code.  If it's 10 times larger, then it defeats the purpose
> -- reading it in from disk will be slower than re-analyzing the original
> source code.
>
> You also suggested storing the info in the object files.  Yes, that is
> possible, given a reasonable object file format that allows arbitrary
> information to be stored, in addition to the actual machine code.

DWARF?

> Building a complete Ada implementation is a daunting task (many
> person-years).  You said you're doing a subset of Ada 2005, and I assume
> you're doing this "just for fun".  Keep your subset small, or you will
> never finish.

Nope, just a subset.

Luke.




  reply	other threads:[~2007-05-10  3:38 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-09 14:37 Implementing an Ada compiler and libraries Lucretia
2007-05-09 16:51 ` Dmitry A. Kazakov
2007-05-09 17:21   ` Lucretia
2007-05-10  7:59     ` Dmitry A. Kazakov
2007-05-10  8:51       ` Duncan Sands
2007-05-10 17:39       ` Lucretia
2007-05-10 18:06         ` Lucretia
2007-05-10 19:30           ` Dmitry A. Kazakov
2007-05-11  7:14           ` Gautier
2007-05-11 17:39             ` Lucretia
2007-05-11 17:43               ` Lucretia
2007-05-11 18:20                 ` Robert A Duff
2007-05-11 18:49                   ` Lucretia
2007-05-11 20:34                     ` Georg Bauhaus
2007-05-11 22:37                       ` Lucretia
2007-05-11 22:06                     ` Robert A Duff
2007-05-11 22:41                       ` Lucretia
2007-05-16 19:40                 ` Randy Brukardt
2007-05-09 20:48 ` Robert A Duff
2007-05-10  3:38   ` Lucretia [this message]
2007-05-16 19:58   ` Randy Brukardt
2007-05-09 21:15 ` Gautier
2007-05-10  3:39   ` Lucretia
2007-05-10 15:34   ` Stefan Bellon
2007-05-10 16:25     ` Jean-Pierre Rosen
2007-05-10 17:07       ` Ludovic Brenta
2007-05-10 17:14         ` Stefan Bellon
2007-05-10 16:37     ` Ludovic Brenta
2007-05-10 16:43       ` Stefan Bellon
2007-05-10 16:49         ` Ludovic Brenta
2007-05-10 17:02           ` Stefan Bellon
2007-05-10 19:57             ` Jacob Sparre Andersen
2007-05-10 20:31             ` Simon Wright
2007-05-10 17:37       ` Pascal Obry
2007-05-11 10:09         ` Ludovic Brenta
2007-05-11 16:33           ` Pascal Obry
2007-05-10 17:36     ` Pascal Obry
2007-05-10 17:42     ` Lucretia
2007-05-10 17:34 ` Pascal Obry
2007-05-10 17:48   ` Lucretia
2007-05-10 20:01   ` Duncan Sands
2007-05-10 21:00     ` Pascal Obry
2007-05-10 21:00     ` Pascal Obry
2007-05-11 11:04       ` Duncan Sands
2007-05-13 12:03         ` Ludovic Brenta
2007-05-11  8:39   ` Georg Bauhaus
replies disabled

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