From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Open source Ada OS?
Date: Thu, 27 Jan 2011 16:29:26 -0600
Date: 2011-01-27T16:29:26-06:00 [thread overview]
Message-ID: <ihsrk9$md2$1@munin.nbi.dk> (raw)
In-Reply-To: a8e001b7-254a-4143-b86a-2c38bbd50327@y9g2000prf.googlegroups.com
That's surely part of it. But I think it really needs some mechanism to keep
the common parts of files in synch without much manual intervention. That
seems to be a tough problem; C systems often use macros and conditional
compilation to deal with this, but that leads to a mess of hard to maintain
code. Ada uses separate bodies instead, which is generally better. But it
has the problem that if the specification changes, you have to manually
change the matching specifications in all of the bodies in the same way. And
this is just busywork; while you still need to inspect the actual body code,
the specifications are pain. Similarly, in those "unshared" bodies, it is
common that there is a routine or three that are the same for most (or even
all) of those bodies; changing those more than once is a pain.
I suspect that a scheme using structured comments would do the trick, but
clearly such a system has to be Ada-aware (more generally, aware of the
source language). Even better would be a GUI that was aware of that and
automatically made the changes to parts of files, assembling the entire file
only in the GUI, for export, and for compilation. But I worry that the
result would be too complex for most mortals to use.
Randy.
"Edward Fish" <edward.r.fish@gmail.com> wrote in message
news:a8e001b7-254a-4143-b86a-2c38bbd50327@y9g2000prf.googlegroups.com...
> Randy,
> It sounds almost like you want the ability to:
> a) Define a collection of files; (not a true set, as duplicate
> [names] might be in it)
> b) Have the ability to 'subset' this collection; (this would be your
> [sub-]project)
> c) Associate from the set in 'b' files from 'a'; (allowing different
> bodies to be in different projects)
> d) Have changes to some files {the bodies} update only their
> associated file from 'a'.
>
> Something like this psudo-ada:
> x86_Compiler : Project:=
> ( "Compiler.A*","Frontend.A*","Backend.ADS","Backend.ADB" => "[INTEL]-
> Backend.ADB" );
>
> Is this an accurate description of what you want?
next prev parent reply other threads:[~2011-01-27 22:29 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-25 21:08 Open source Ada OS? R. Tyler Croy
2011-01-25 21:33 ` Simon Clubley
2011-01-25 21:54 ` R. Tyler Croy
2011-01-26 0:37 ` anon
2011-01-26 1:54 ` Yannick Duchêne (Hibou57)
2011-01-26 8:36 ` Ludovic Brenta
2011-01-26 11:32 ` Yannick Duchêne (Hibou57)
2011-01-26 13:06 ` Ludovic Brenta
2011-01-26 23:02 ` Randy Brukardt
2011-01-26 23:58 ` Edward Fish
2011-01-27 22:29 ` Randy Brukardt [this message]
2011-01-27 8:41 ` Dmitry A. Kazakov
2011-01-27 9:23 ` Maciej Sobczak
2011-01-26 14:04 ` Georg Bauhaus
2011-01-28 11:32 ` anon
2011-01-27 17:53 ` Dirk Heinrichs
2011-01-28 10:57 ` anon
2011-01-28 11:22 ` Ludovic Brenta
2011-01-29 16:52 ` anon
2011-01-29 17:15 ` Simon Wright
2011-01-28 17:15 ` R. Tyler Croy
2011-01-30 9:48 ` Dirk Heinrichs
2011-01-30 12:11 ` Simon Wright
2011-01-26 5:13 ` Shark8
2011-01-26 7:44 ` Yannick Duchêne (Hibou57)
2011-01-26 22:48 ` Shark8
2011-01-26 8:27 ` Ludovic Brenta
2011-01-26 18:09 ` Warren
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox