From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: seL4 as base of an AdaOS with some Spark proofing?
Date: Fri, 1 Aug 2014 14:32:01 -0500
Date: 2014-08-01T14:32:01-05:00 [thread overview]
Message-ID: <lrgpvi$48b$1@loke.gir.dk> (raw)
In-Reply-To: 485a93a1-8920-4139-8563-591dba79d68d@googlegroups.com
<gvdschoot@gmail.com> wrote in message
news:485a93a1-8920-4139-8563-591dba79d68d@googlegroups.com...
On Friday, August 1, 2014 9:42:03 AM UTC+2, kug...@web.de wrote:
...
>> > Here is another idea. Let's for instance instead focus on tools that
>> > can automatically translate C source code to Ada.
>>
>> What I know about C, you won't and I'm very sure you can't translate it
>> to Ada in an automatic way.
Of course you can translate C to Ada. There were various tools to do that
back in the 1980s. The problem is that the Ada you get is terrible Ada (the
one I saw was full of address manipulations). (That's true of any automatic
language translator, BTW.)
>Just because it hasn't been done before doesn't mean it is impossible. For
>instance the
> Go (golang) team in the person of Russ Cox is working on c2go and the
> approach he
> takes is unconventional. There is presentation about this on youtube.
There's no problem doing such a translator (it's relatively easy to do). The
problem is that the result is terrible Ada (little typing, lots of address
math, etc.). In order to make *good* Ada, you need a redesign. That's also
the case if you want to use SPARK or even the Ada 2012 contracts -- a
translator can't create intentions that aren't in the source code. There's a
reason such translators today stop at thin bindings -- that's because there
is no point in going further without a redesign (and thin bindings ought to
always be wrapped in a thick binding for Ada use).
Randy.
next prev parent reply other threads:[~2014-08-01 19:32 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-30 8:22 seL4 as base of an AdaOS with some Spark proofing? kug1977
2014-07-30 9:06 ` Georg Bauhaus
2014-07-30 10:41 ` Peter Chapin
2014-07-30 11:55 ` G.B.
2014-07-30 17:47 ` Shark8
2014-07-30 22:40 ` Peter Chapin
2014-07-30 22:53 ` Shark8
2014-07-31 0:31 ` Simon Clubley
2014-07-31 6:23 ` Georg Bauhaus
2014-07-30 17:58 ` anon
2014-07-31 22:03 ` gvdschoot
2014-08-01 7:42 ` kug1977
2014-08-01 8:27 ` gvdschoot
2014-08-01 9:04 ` gvdschoot
2014-08-01 19:32 ` Randy Brukardt [this message]
2014-08-01 19:17 ` anon
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox