comp.lang.ada
 help / color / mirror / Atom feed
From: Brian Drummond <brian@shapes.demon.co.uk>
Subject: Re: Ada, the best language with the not-so-best tool chain
Date: Tue, 9 Oct 2012 08:10:44 +0000 (UTC)
Date: 2012-10-09T08:10:44+00:00	[thread overview]
Message-ID: <k50m64$2na$1@dont-email.me> (raw)
In-Reply-To: adhsptF2rthU1@mid.individual.net

On Tue, 09 Oct 2012 08:59:25 +0300, Niklas Holsti wrote:

> On 12-10-09 00:28 , Ludovic Brenta wrote:
>> Patrick writes on comp.lang.ada:
>> 
>> * bare-metal programming is _very_ difficult in any language.
> 
> Yes and no; some small bare metal systems are easy (on reset, the
> processor starts running from address zero with a workable initial
> state); others are much harder to get running (as you say in a later
> point, not quoted).

Yes. Bare metal programming on a Z80 is easy. Ditto PIC, AVR, etc etc, 
and of these only the AVR has an Ada toolchain. It may not be mature but 
it is very usable. (We need to get Warren's thread library into the 
mainstream though)

Bare metal on a typical ARM SOC ... not so much.

Though with an ARM dev board "available" for $5, ("available" stays in 
quotes until mine arrives, probably in November)
http://hackaday.com/2012/08/31/preorder-tis-arm-cortex-m4-launchpad-for-5-
delivered/
the ARM in all its varieties would be a good next target for the Ada 
community to focus on. There certainly are ARM Ada compilers, but I'm not 
sure they are even as mature as AVR-Ada. It's not immediately clear to me 
which variant I would start with for any particular ARM processor or 
board, or what RTS it provides. (With one exception : Debian on the R-
Pi). The Gnat Android project would be part of this family, and it too 
seems to have stalled.

> But every small board or processor-on-a-USB-stick that I have seen comes
> with a C toolchain that handles the bootstrap, and you can get a
> LED-blinker running very easily. Not so for Ada, except for the small
> number of systems already mentioned (MaRTE OS; Ada for Lego Mindstorms;
> GNAT for AVR).

What other small targets does gcc support? One approach would be to build 
for another of these with Ada support, and provide a minimal library 
along AVR-Ada lines. This would be an approachable project for a small 
community or a class project.

Or me, unless I get a job offer soon...

> I don't think this problem is a consequence of the Ada language
> properties, but shows the relative commercial success and penetration of
> C and Ada in small embedded systems.

I think with ARM and AVR covered, Ada should be in a better place than it 
is. But even in the Arduino community, AVR-Ada goes almost unnoticed.
So part of the problem is publicity and exposure, and those need not be 
expensive to address.

- Brian



  parent reply	other threads:[~2012-10-16  1:56 UTC|newest]

Thread overview: 170+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-07 17:34 Ada, the best language with the not-so-best tool chain Patrick
2012-10-07 18:43 ` Dmitry A. Kazakov
2012-10-07 22:35   ` Simon Clubley
2012-10-08  7:35     ` Dmitry A. Kazakov
2012-10-08 12:10       ` The Ada community's attitude, was: " Simon Clubley
2012-10-09  9:20     ` pavel.klinkovsky
2012-10-12 12:09     ` Lucretia
2012-10-12 12:47       ` Simon Clubley
2012-10-12 12:59         ` Lucretia
2012-10-16 20:05           ` Simon Clubley
2012-10-16 20:10             ` phone.john.kern
2012-10-18 14:14             ` Lucretia
2012-10-18 17:05               ` Simon Clubley
2012-10-12 13:28       ` kalvin.news
2012-10-11  4:04   ` Yannick Duchêne (Hibou57)
2012-10-07 18:49 ` Shark8
2012-10-07 20:21   ` Patrick
2012-10-08  7:31     ` Dmitry A. Kazakov
2012-10-08 11:28       ` Simon Clubley
2012-10-08 12:49         ` Dmitry A. Kazakov
2012-10-08 12:40       ` Georg Bauhaus
2012-10-08 13:00         ` Dmitry A. Kazakov
2012-10-08 13:57           ` Patrick
2012-10-08 14:02             ` Patrick
2012-10-08 19:53             ` Rego, P.
2012-10-08 20:27             ` Niklas Holsti
2012-10-08 14:00           ` Georg Bauhaus
2012-10-08 14:22             ` Dmitry A. Kazakov
2012-10-08 14:30               ` Georg Bauhaus
2012-10-08 16:12                 ` Dmitry A. Kazakov
2012-10-08 16:54                   ` Patrick
2012-10-08 18:22                     ` Dmitry A. Kazakov
2012-10-08 18:29                       ` Patrick
2012-10-08 19:27                         ` Dmitry A. Kazakov
2012-10-08 20:44                           ` Simon Clubley
2012-10-09  9:13                             ` Dmitry A. Kazakov
2012-10-09  9:59                               ` Georg Bauhaus
2012-10-09 12:16                                 ` Dmitry A. Kazakov
2012-10-09 15:06                                   ` Georg Bauhaus
2012-10-09 16:53                                     ` Dmitry A. Kazakov
2012-10-18 21:53                             ` Randy Brukardt
2012-10-19 11:23                               ` Mark Lorenzen
2012-10-19 14:09                               ` Patrick
2012-10-19 14:47                                 ` Yannick Duchêne (Hibou57)
2012-10-19 14:56                                   ` Patrick
2012-10-19 15:04                                     ` Vinzent Höfler
2012-10-19 17:30                                     ` Simon Clubley
2012-10-19 18:07                                       ` Yannick Duchêne (Hibou57)
2012-10-19 19:05                                       ` Georg Bauhaus
2012-10-19 19:14                                       ` Jeffrey Carter
2012-10-19 18:24                                     ` Anh Vo
2012-10-19 18:40                                       ` Adam Beneschan
2012-10-19 21:44                                     ` Jeffrey Carter
2012-10-19 22:28                                     ` Brian Drummond
2012-10-20 10:57                                       ` Yannick Duchêne (Hibou57)
2012-10-20 23:08                                         ` Brian Drummond
2012-10-19 15:38                                 ` Dmitry A. Kazakov
2012-10-19 22:08                                 ` Brian Drummond
2012-10-24  9:56                               ` Paul Rubin
2012-10-24 11:21                                 ` Simon Clubley
2012-10-24 13:13                                   ` kalvin.news
2012-10-24 16:16                                     ` Paul Rubin
2012-10-24 16:27                                       ` Yannick Duchêne (Hibou57)
2012-10-24 16:41                                         ` Paul Rubin
2012-10-24 16:57                                           ` Yannick Duchêne (Hibou57)
2012-10-24 17:36                                             ` Paul Rubin
2012-10-24 17:55                                             ` Niklas Holsti
2012-10-24 21:17                                           ` Brian Drummond
2012-10-24 22:08                                             ` Paul Rubin
     [not found]                                               ` <4dqg885bcf05isnup07a28jrq8lbq5fknd@invalid.netcom.com>
2012-10-24 22:31                                                 ` Paul Rubin
2012-10-25  8:42                                               ` Brian Drummond
2012-10-29 14:51                                   ` mjsilva
2012-10-08 23:04                           ` Patrick
2012-10-08 23:07                           ` Patrick
2012-10-09  8:35                             ` Dmitry A. Kazakov
2012-10-08 21:28                         ` Ludovic Brenta
2012-10-08 23:58                           ` Patrick
2012-10-09  5:59                           ` Niklas Holsti
2012-10-09  8:02                             ` kalvin.news
2012-10-09  8:06                               ` kalvin.news
2012-10-10  5:56                               ` Stephen Leake
2012-10-10  6:48                                 ` Niklas Holsti
2012-10-10  7:06                                   ` Ludovic Brenta
2012-10-10  8:17                                     ` Niklas Holsti
2012-10-12 12:27                               ` Lucretia
2012-10-12 12:45                                 ` Simon Clubley
2012-10-12 12:58                                   ` Lucretia
2012-10-09  8:10                             ` Brian Drummond [this message]
2012-10-10 15:26                               ` Tero Koskinen
2012-11-08  9:36                               ` Jacob Sparre Andersen
2012-11-08 13:52                                 ` Rego, P.
2012-11-08 21:50                                 ` Brian Drummond
2012-11-09  1:24                                 ` Randy Brukardt
2012-11-09 10:16                                   ` Brian Drummond
2012-11-10  8:05                                     ` Randy Brukardt
     [not found]                                       ` <ulat9855qcom15kt7lk68rsidf44uau4q5@invalid.netcom.com>
2012-11-15  1:21                                         ` Randy Brukardt
2012-12-17 16:33                                 ` Brian Drummond
2012-12-17 17:57                                   ` Shark8
2012-12-25  9:29                                   ` Paul Rubin
2012-12-26 10:38                                     ` Brian Drummond
2012-12-25 10:11                                   ` Niklas Holsti
2012-12-26 10:40                                     ` Brian Drummond
2012-10-08 19:17                       ` kalvin.news
2012-10-08 20:16                       ` Simon Clubley
2012-10-09  9:33                         ` Dmitry A. Kazakov
2012-10-09  9:57                           ` kalvin.news
2012-10-09 12:31                             ` Dmitry A. Kazakov
2012-10-09 12:51                               ` kalvin.news
2012-10-09 13:01                                 ` Dmitry A. Kazakov
2012-10-09 12:04                           ` Simon Clubley
2012-10-09 13:18                             ` Dmitry A. Kazakov
2012-10-09 15:53                               ` kalvin.news
2012-10-09 17:08                                 ` Dmitry A. Kazakov
2012-10-09 18:26                                   ` kalvin.news
2012-10-09 20:40                                     ` Dmitry A. Kazakov
2012-10-09 23:23                                   ` Simon Clubley
2012-10-10  7:36                                     ` Dmitry A. Kazakov
2012-10-10 13:13                                       ` Simon Clubley
2012-10-10 13:45                                         ` kalvin.news
2012-10-10 15:44                                         ` Rego, P.
2012-10-10 17:52                                           ` Simon Clubley
2012-10-10 15:40                                       ` Rego, P.
2012-10-10 16:09                                         ` Dmitry A. Kazakov
2012-10-11  9:41                               ` Yannick Duchêne (Hibou57)
2012-10-11 12:01                                 ` Dmitry A. Kazakov
2012-10-09 12:29                           ` Vinzent Hoefler
2012-10-09 12:55                             ` Dmitry A. Kazakov
     [not found]                           ` <hok878l1k7s5i37k8uejv91t82ad41pipg@invalid.netcom.com>
2012-10-09 17:23                             ` Dmitry A. Kazakov
2012-10-11 15:44                           ` mjsilva
2012-10-11 16:20                             ` Dmitry A. Kazakov
2012-10-11 16:55                               ` mjsilva
2012-10-08 20:29                       ` Simon Clubley
2012-10-08 20:49                         ` Simon Clubley
2012-10-11 15:22                       ` mjsilva
2012-10-11 15:52                         ` Yannick Duchêne (Hibou57)
2012-10-11 16:00                           ` Patrick
2012-10-11 16:31                         ` Dmitry A. Kazakov
2012-10-11 16:52                           ` Niklas Holsti
2012-10-16 20:15                         ` phone.john.kern
2012-10-18 22:33                         ` Randy Brukardt
2012-10-18 22:52                           ` Jeffrey Carter
2012-10-18 23:14                             ` Randy Brukardt
2012-10-19  0:46                               ` Jeffrey Carter
2012-10-18 23:58                             ` Yannick Duchêne (Hibou57)
2012-10-19 22:49                           ` Tero Koskinen
2012-10-22 14:25                           ` mjsilva
     [not found]                             ` <be26881c-6662-4830-b86f-34a7d8b25bf4@googlegroups.com>
2012-10-22 15:04                               ` Yannick Duchêne (Hibou57)
2012-10-16 20:08                       ` phone.john.kern
2012-10-08 18:34                     ` Simon Wright
2012-10-08 18:57                       ` Patrick
2012-10-08 20:13             ` Rego, P.
2012-10-07 20:33 ` Niklas Holsti
2012-10-11 16:22   ` mjsilva
2012-10-08 12:02 ` kalvin.news
2012-10-08 20:48   ` Niklas Holsti
2012-10-09  3:03 ` Stephen Leake
2012-10-09  3:24   ` Patrick
2012-10-09  5:44     ` Niklas Holsti
2012-10-10  5:52     ` Stephen Leake
2012-11-08  8:07       ` Jacob Sparre Andersen
2012-11-09 12:29         ` Stephen Leake
2012-11-09 12:56           ` Dmitry A. Kazakov
2012-11-20 21:25         ` Tero Koskinen
2012-11-20 22:15           ` Niklas Holsti
2012-11-21 16:18           ` Lucretia
2012-10-10 11:04 ` kalvin.news
2012-10-11 17:44 ` mjsilva
2012-10-16 20:13   ` phone.john.kern
2012-11-07 14:02 ` Kristoffer Nyborg Gregertsen
2013-01-02  7:01 ` Diogenes
replies disabled

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