comp.lang.ada
 help / color / mirror / Atom feed
From: Natasha Kerensikova <lithiumcat@instinctive.eu>
Subject: Re: Cross-toolchain for DS [was: Newcomers to comp.lang.ada: welcome and how did you end up here ?]
Date: Wed, 15 Oct 2014 10:32:32 +0000 (UTC)
Date: 2014-10-15T10:32:32+00:00	[thread overview]
Message-ID: <slrnm3sj9t.nrc.lithiumcat@nat.rebma.instinctive.eu> (raw)
In-Reply-To: yzr%v.417461$b_1.39796@fx10.fr7

Hello,

On 2014-10-15, Brian Drummond <brian3@shapes.demon.co.uk> wrote:
> On Sun, 12 Oct 2014 10:56:07 +0000, Natasha Kerensikova wrote:
>> The reason why I'm asking, is I'm stilling working on updating gela and
>> building on it a RTS-limited LLVM-based Ada 95 compiler seems realistic
>> (albeit far away down the road).
>
> How is that coming along?

I don't have much time to put into it, so it is indeed coming along but
very slowly.

From what I gathered, Gela doesn't even fully cover Ada 95, so my first
intermediate goal is turning into a fully-featured Ada 95 ASIS provider
(which is what I meant with "updating" in the quote above).

To reach that intermediate goal, I'm using AdaControl as an ASIS test
suite, so the very first step is plugging Gela into AdaControl. That
plugging is what I'm currently dealing with, and it feels almost
complete.

At some point, hopefully soonish, a Gela-enabled AdaControl and a
work-in-progress Gela repository will be made available, so that anyone
interested can contribute.

> For me, Gela built successfully, and I started to look at connecting it 
> to an intermediate representation which already has translators to gcc 
> and experimentally, LLVM (and more, specifically a JIT targetting x86, 
> which would make a very lightweight compiler). 
>
> But got no further, so far. The existing translator from a semanticised 
> tree into this IR would serve as a pattern, but it's quite a large chunk 
> of code...

As explained above, I haven't looked at the code generation part yet.

Basically building a compiler is an awefully large task, and it would
still feel daunting to me even if everybody here gathered to magically
work on it without any communication/coordination overhead.

So my worst fear is putting a lot of effort into it and give up before
anything useful comes out of it. To prevent such a waste, I'm choosing
the path towards the closest meaningful goal.
It turns out that making Gela useful as an AdaControl backed is a useful
achievement in itself, but it looks small enough to be achievable.

When/if it is achieved, I hope I will have enough knowledge about Gela
to asses how realistic it is to base code generation on it, and if it
is, start doing it.
For example, I recently realized that Standard package cannot be written
in Ada (think of the declaration of Wide_Character type), it probably
has to involve some compiler magic, but I don't know yet how compatible
with Gela architecture such a magic is.

And once basic code generation is operation, only then would I starting
looking at RTS issues, because once again, and RTS-less Ada compiler has
some use, while RTS fragments without a good compiler is useless. I just
wonder whether a significant part of the RTS can be targeting LLVM
itself, and thereby be automatically portable across all backend
targets. That would be a very nice perk for the project.

However please note that this is only a personal strategic choice, I
won't blame or criticize anybody starting to look at code generation
now, I'm just explaining the rationale behind my not looking at it yet.


Natasha

  reply	other threads:[~2014-10-15 10:32 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-06 22:42 Newcomers to comp.lang.ada: welcome and how did you end up here ? Simon Clubley
2014-10-06 23:18 ` brbarkstrom
2014-10-07  8:10 ` Gour
2014-10-07 10:49   ` Luke A. Guest
2014-10-08  7:23     ` Gour
2014-10-08  8:35       ` Brian Drummond
2014-10-08  9:15         ` Simon Wright
2014-10-08 19:14           ` -fdump-ada-spec (was: Newcomers to comp.lang.ada: welcome and how did you end up here ?) Ludovic Brenta
2014-10-08 19:48             ` -fdump-ada-spec Simon Wright
2014-10-08  9:17         ` Newcomers to comp.lang.ada: welcome and how did you end up here ? Gour
2014-10-08 11:23       ` Dmitry A. Kazakov
2014-10-10  9:18         ` Gour
2014-10-08 13:33       ` Luke A. Guest
2014-10-07 20:06 ` Stribor40
2014-10-07 20:21   ` Jeffrey Carter
2014-10-07 21:28     ` David Botton
2014-10-09  5:57       ` Dirk Craeynest
2014-10-10  0:58     ` rriehle
2014-10-08  7:08   ` Dmitry A. Kazakov
2014-10-09 11:58 ` Mark Carroll
2014-10-09 13:31   ` Simon Wright
2014-10-09 18:04     ` Brian Drummond
2014-10-09 20:02       ` Dmitry A. Kazakov
2014-10-09 18:35     ` Mark Carroll
2014-10-09 21:08       ` Simon Clubley
2014-10-10  7:28         ` Natasha Kerensikova
2014-10-10  9:07           ` Mark Carroll
2014-10-10  9:33             ` Björn Lundin
2014-10-10 11:41               ` Natasha Kerensikova
2014-10-10 13:35                 ` Björn Lundin
2014-10-10 17:10                   ` Natasha Kerensikova
2014-10-10 18:22                     ` Luke A. Guest
2014-10-10 14:51                 ` Lucretia
2014-10-10 14:28           ` Lucretia
2014-10-10 19:47           ` Simon Clubley
2014-10-10 21:38             ` Luke A. Guest
2014-10-12 10:56               ` Cross-toolchain for DS [was: Newcomers to comp.lang.ada: welcome and how did you end up here ?] Natasha Kerensikova
2014-10-12 11:40                 ` Simon Clubley
2014-10-12 12:27                   ` Peter Chapin
2014-10-12 19:42                     ` Simon Clubley
2014-10-12 13:25                 ` Luke A. Guest
2014-10-12 13:52                   ` Natasha Kerensikova
2014-10-12 14:40                     ` Luke A. Guest
2014-10-12 20:09                     ` Natasha Kerensikova
2014-10-19 14:34                       ` Natasha Kerensikova
2014-10-19 15:48                         ` Luke A. Guest
2014-10-23  8:22                           ` Natasha Kerensikova
2014-10-12 23:18                     ` Lucretia
2014-10-15  9:46                       ` Brian Drummond
2014-10-15 16:50                         ` Lucretia
2014-10-15  9:58                 ` Brian Drummond
2014-10-15 10:32                   ` Natasha Kerensikova [this message]
2014-10-16 12:04                     ` Brian Drummond
2014-10-11 10:53             ` Newcomers to comp.lang.ada: welcome and how did you end up here ? Brian Drummond
2014-10-12  1:33         ` David Botton
2014-10-12  1:25       ` David Botton
2014-10-12 14:40         ` Luke A. Guest
2014-10-09 19:06   ` Shark8
2014-11-04 16:28   ` Nicholas Collin Paul de Gloucester
2014-11-04 16:45     ` Barry Danforth
2014-11-04 17:18       ` David Botton
2014-10-09 12:50 ` john
2014-10-09 21:08 ` gdotone
2014-10-10 16:25 ` Stribor40
2014-10-10 17:09   ` Luke A. Guest
2014-10-10 17:59     ` Stribor40
2014-10-10 18:22       ` Luke A. Guest
2014-11-08 23:51 ` HerrDoktor
2014-11-09  7:44   ` Karl Stromberg
2014-11-09  9:28     ` HerrDoktor
2014-11-09  9:42     ` HerrDoktor
2014-11-09  9:59       ` Karl Stromberg
2014-11-09 10:25         ` HerrDoktor
2014-11-09 16:31           ` David Botton
2014-11-09 16:29         ` David Botton
replies disabled

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