From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=0.4 required=5.0 tests=BAYES_00,FORGED_MUA_MOZILLA autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,3025dd6d917b499c X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,UTF8 Received: by 10.181.12.101 with SMTP id ep5mr3126238wid.1.1350352626042; Mon, 15 Oct 2012 18:57:06 -0700 (PDT) Path: q11ni134324915wiw.1!nntp.google.com!feeder2.cambriumusenet.nl!feed.tweaknews.nl!94.232.116.12.MISMATCH!feed.xsnews.nl!border-2.ams.xsnews.nl!border3.nntp.ams.giganews.com!border1.nntp.ams.giganews.com!nntp.giganews.com!news.panservice.it!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Niklas Holsti Newsgroups: comp.lang.ada Subject: Re: Ada, the best language with the not-so-best tool chain Date: Tue, 09 Oct 2012 08:59:25 +0300 Organization: Tidorum Ltd Message-ID: References: <38af7fb8-b0a4-4a31-87aa-b7b698cc89c3@googlegroups.com> <3ca0ffd0-1764-484b-8fab-17c0d2dd9463@googlegroups.com> <1f645050-cf4c-40bf-a797-9687b69e4a54@googlegroups.com> <18ats2960nsvm$.kfufsnul13aq$.dlg@40tude.net> <5072c9ae$0$6562$9b4e6d93@newsspool4.arcor-online.net> <4keoa6epdxt7.1nnwxy7v7ar90.dlg@40tude.net> <5072dc68$0$6554$9b4e6d93@newsspool4.arcor-online.net> <1f7cmfp1l65w1.1deog8cfxbs0u$.dlg@40tude.net> <5072e37a$0$6556$9b4e6d93@newsspool4.arcor-online.net> <877gr0hcvz.fsf@ludovic-brenta.org> Mime-Version: 1.0 X-Trace: individual.net DkS52QkdikJ6BjL5V6CsLACvBbybazPuLZClStSW/rI4MY8vIy Cancel-Lock: sha1:bx9sbdtRJV/Ule7jQS647OtzFLs= User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:15.0) Gecko/20120907 Thunderbird/15.0.1 In-Reply-To: <877gr0hcvz.fsf@ludovic-brenta.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Date: 2012-10-09T08:59:25+03:00 List-Id: 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 . @ .