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.2 required=5.0 tests=BAYES_00,INVALID_MSGID, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fd6dd,c78177ec2e61f4ac X-Google-Attributes: gidfd6dd,public X-Google-Thread: 103376,c78177ec2e61f4ac X-Google-Attributes: gid103376,public From: "John G. Volan" Subject: Re: ada and robots Date: 1997/06/07 Message-ID: <339974E0.335E@sprintmail.com>#1/1 X-Deja-AN: 246803163 References: <338CDA96.53EA@halcyon.com> <338F5D7D.6C03@tiac.net> <338F9D05.5EB3@bix.com> <01bc6dfe$9f580d80$21fa82c1@xhv46.dial.pipex.com> <3395A015.41C67EA6@digicomp.com> Organization: Sprint Internet Passport Reply-To: johnvolan@sprintmail.com Newsgroups: comp.robotics.misc,comp.lang.ada Date: 1997-06-07T00:00:00+00:00 List-Id: dana@indyweb.net wrote: > > In article , aklee@no_spam.bonsai.net > (Albert K. Lee) wrote: > > > So does anybody have any answers for the original poster? That guy > > who was asking quite innocently about specific techniques and tools > > for embedded programming using the Ada language? [snip] > I think the general lack of response back to the group could be taken as > response in the negative. I dunno. This newsgroup has been uncharacteristically quiet lately, the usual contributors seem to have dropped off the map. Is there some Ada conference going on this week? > I e-mail the original poster with a more > detailed response but I'll post a summary here for all you curious folks. > > I assume the original question was REALY about looking for compilers for > the calss of low cost 8 -16 bit processors typically used in hobbyist type > robots. ("Hobbyist", not to demean these robots, just classify them) > That question raises several other on obvious questions. ... Dana's points are well-taken, but let me steer the discussion slightly into a different avenue: If we're talking "hobbyist" category work, then what about GNAT? If any of the GNAT team are listening, I'll defer to their wisdom of course, but in the meantime: - In the 8-16 bit processor category, when this question has been asked in the past, the general consensus appears to be that indeed, such systems are "too small" to port GNAT to. In fact, I believe 8-bit processors would be too small for Ada itself (ah, at last, an actual language-suitability fact!) because, for instance, Standard.Integer is expected to be optimally supported on the given target hardware, and it is required to cover at least a 16-bit range of integer values. (Doesn't C have a similar requirement for int?) For 16-bit processors, I believe Robert Dewar has basically discounted the possibility of porting GNAT, but I wonder if he just meant that a 16-bit processor is an unlikely _host_ for GNAT? It would be worth checking the GCC configs to see whether your prospective 16-bit target architecture was already supported there. If it is, then it's not that hard to configure and build a GNAT cross-compiler for it. If the platform isn't already supported, doing a fresh port of GCC is somewhat more difficult (you have to create a description of your target instruction set using Register Transfer Language, and so forth), but it's not entirely impossible. (There's the obvious question about whether tasking can be supported if you don't already have a threads library for the target platform, but you may have already decided to jettison tasking anyway. And of course things such as Text_IO are problematic without OS support.) - GNAT looks much more feasible for processors in the 32-bit range, and as Dana points out, the price of these has been falling. Cross-compiler configurations of GNAT and the GNU tools are certainly feasible in this category. Someone out there may already have done this for your prospective architecture. I've lost the original post, but if you're still listening, what processors did you have in mind? Would you consider, let's say, a 680x0 or a 80X86? ------------------------------------------------------------------------ Internet.Usenet.Put_Signature (Name => "John G. Volan", Employer => "Texas Instruments Advanced C3I Systems, San Jose, CA", Work_Email => "johnv@ti.com", Home_Email => "johnvolan@sprintmail.com", Slogan => "Ada95: World's *FIRST* International-Standard OOPL", Disclaimer => "My employer never defined these opinions, so using" & "them would be totally erroneous ... or is that" & "just nondeterministic behavior now? :-) "); ------------------------------------------------------------------------