comp.lang.ada
 help / color / mirror / Atom feed
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? 





  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