From: Niklas Holsti <niklas.holsti@tidorum.invalid>
Subject: Re: Ada, the best language with the not-so-best tool chain
Date: Tue, 09 Oct 2012 08:59:25 +0300
Date: 2012-10-09T08:59:25+03:00 [thread overview]
Message-ID: <adhsptF2rthU1@mid.individual.net> (raw)
In-Reply-To: <877gr0hcvz.fsf@ludovic-brenta.org>
On 12-10-09 00:28 , Ludovic Brenta wrote:
> Patrick writes on comp.lang.ada:
>> "Why are people so obsessed with ARM? You could have a decent
>> Atom-based board for same money. AMD Geode LX could be an alternative.
>>
>> Anyway, the thingy should run Linux. I believe there was a GNAT for
>> ARM somewhere. Maybe others could point out its status. "
>>
>> Yes but my main point was the lack of GPIO, please comment on this
>
> The Raspberry Pi has, IIRC, 17 GPIO ports. See it in action here:
>
> http://www.youtube.com/watch?v=RuYLTudcOaM
>
> For what it's worth, here is my opinion on your problem as you describe
> it.
>
> * 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).
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).
> * there are so many options to choose from that none is "standard"
> enough to gather a community around it; whatever "bare metal" you
> chose, you'll be alone or almost alone with it. The various
> processors and µcontrollers are just one aspect of this diversity; at
> the bare metal level, each and every other device on the board
> (e.g. Flash storage, USB, GPIO, whatnot) has its own peculiar
> programming interface. That's why GNAT supports so few bare-metal
> targets.
Yet the commercial C compilers, such as the ones from IAR Systems,
support a zillion different target processors, boards, JTAG systems and
other debuggers... out of the box. The full compiler is expensive, but
size-limited versions are usually free.
If you need threads, add one of the free RTOSes... but get only C support.
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.
--
Niklas Holsti
Tidorum Ltd
niklas holsti tidorum fi
. @ .
next prev parent reply other threads:[~2012-10-16 1:57 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 [this message]
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
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