From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=0.0 required=3.0 tests=BAYES_40,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.5-pre1 X-Received: by 2002:a37:5bc3:: with SMTP id p186mr29115102qkb.401.1595947107156; Tue, 28 Jul 2020 07:38:27 -0700 (PDT) X-Received: by 2002:a0c:e048:: with SMTP id y8mr28069530qvk.11.1595947106960; Tue, 28 Jul 2020 07:38:26 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!feeder.eternal-september.org!news.linkpendium.com!news.linkpendium.com!news.snarked.org!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Tue, 28 Jul 2020 07:38:26 -0700 (PDT) In-Reply-To: <5f1e8b54$0$5873$426a74cc@news.free.fr> Complaints-To: groups-abuse@google.com Injection-Info: google-groups.googlegroups.com; posting-host=146.5.2.231; posting-account=lJ3JNwoAAAAQfH3VV9vttJLkThaxtTfC NNTP-Posting-Host: 146.5.2.231 References: <52baf1e5-f0a5-42be-acc7-75fb17fb6f4co@googlegroups.com> <5f1e8b54$0$5873$426a74cc@news.free.fr> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <1f630159-0f94-4bb8-9917-408757b4eaedo@googlegroups.com> Subject: Re: AdaCore's survey regarding the future of GNAT Community Edition From: Shark8 Injection-Date: Tue, 28 Jul 2020 14:38:27 +0000 Content-Type: text/plain; charset="UTF-8" Xref: reader01.eternal-september.org comp.lang.ada:59571 List-Id: On Monday, July 27, 2020 at 2:07:50 AM UTC-6, DrPi wrote: > > > What about Ada for microcontrollers ? Honestly, Byron's plan would be the easiest way to get microcontrollers: (1) Design an Ada implementation with a modular backend. (2) Use SPARK verification for as much of the compiler as possible. (3) Create a FORTH backend. (4) Because you can reduce FORTH bootstrapping to about 30 (usually small) words, this provides a way to EASILY bootstrap a new architecture. (5) If native code generation is needed, you could [more easily] write a new backend, due to #1. (6) If native compiler-hosting is needed, take the backend of #5, run the compiler through it, done. Optional would be writing a FORTH implementation in Ada 2012/SPARK, where you could feed the Ada compiler to the FORTH-generating backend, and use that result as an intermediate form for bootstrapping.