comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Dynamic Variant Record Creation
Date: Wed, 17 Mar 2010 19:13:04 -0500
Date: 2010-03-17T19:13:04-05:00	[thread overview]
Message-ID: <hnrr6j$d7n$1@munin.nbi.dk> (raw)
In-Reply-To: a4de16f2-1b14-4c9d-886a-2e61f6c01863@k6g2000prg.googlegroups.com

"Adam Beneschan" <adam@irvine.com> wrote in message 
news:a4de16f2-1b14-4c9d-886a-2e61f6c01863@k6g2000prg.googlegroups.com...
On Mar 16, 4:39?pm, "Randy Brukardt" <ra...@rrsoftware.com> wrote:
...
>This has to use the same sort of case statement to initialize the
>components in the variant parts.  So I thought that basically the code
>would be using the same logic, plus assigning initial values to the
>non-variant components.

As noted to Bob, that doesn't work in Janus/Ada. There also is a critical 
limitation on our intermediate code: there cannot be case statement-like 
control structures in expressions (we completely separate control flow and 
values in the intermediate code; there cannot be live values when there is 
control flow and vice-versa; values have very limited control flow 
possibilities from short circuit operations and loop initializers).

If the idea offered much additional expressiveness, I wouldn't object, but 
it doesn't seem to have enough.

Steve Baird and I had worked out a partially constrained discriminant 
constraint which would have provided a much better solution to this problem 
along with many others -- but Tucker Taft couldn't seem to wrap his mind 
around the idea (it seemed natural to me) and thus it got quickly killed. 
Thus I don't think there will be any relief.


                                           Randy.

P.S. It probably isn't fair to single out Tucker for killing the idea, but 
since he usually has a much more flexible view of the world, it was bizarre 
that he couldn't understand it. I suspect many took that as an indication 
that it was fatally flawed; I suspect the problem more was one of 
presentation.





  reply	other threads:[~2010-03-18  0:13 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-16 17:11 Dynamic Variant Record Creation Warren
2010-03-16 18:31 ` Georg Bauhaus
2010-03-16 18:57 ` Adam Beneschan
2010-03-16 20:01   ` Warren
2010-03-16 20:09     ` Jeffrey R. Carter
2010-03-16 20:24       ` Warren
2010-03-16 20:40         ` Robert A Duff
2010-03-16 20:44           ` Warren
2010-03-16 20:31     ` Robert A Duff
2010-03-16 20:59       ` Warren
2010-03-16 21:55         ` Jeffrey R. Carter
2010-03-17 14:40           ` Warren
2010-03-18 12:57           ` Warren
2010-03-16 21:58         ` Robert A Duff
2010-03-17 14:22           ` Charmed Snark
2010-03-17 14:49             ` Robert A Duff
2010-03-17 16:30               ` Warren
2010-03-16 21:15       ` Adam Beneschan
2010-03-16 23:24       ` Adam Beneschan
2010-03-16 20:15   ` Robert A Duff
2010-03-16 21:00     ` Warren
2010-03-16 23:39   ` Randy Brukardt
2010-03-16 23:43     ` Randy Brukardt
2010-03-17  0:15     ` Robert A Duff
2010-03-17 14:28       ` Warren
2010-03-18  0:02       ` Randy Brukardt
2010-03-17  4:20     ` Adam Beneschan
2010-03-18  0:13       ` Randy Brukardt [this message]
2010-03-18 13:00         ` 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