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=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,c30642befcd7bf85 X-Google-Attributes: gid103376,public From: ok@goanna.cs.rmit.edu.au (Richard A. O'Keefe) Subject: Re: New GNAT ports (was Re: Ada and Automotive Industry) Date: 1997/01/07 Message-ID: <5asvku$jtu$1@goanna.cs.rmit.edu.au>#1/1 X-Deja-AN: 208273607 references: organization: Comp Sci, RMIT, Melbourne, Australia nntp-posting-user: ok newsgroups: comp.lang.ada Date: 1997-01-07T00:00:00+00:00 List-Id: > >" Amen! If it wasn't clear before, that was exactly my point. The > >cost of the port can be academic if you can't guarantee that the > >compiler will be ready in time. I'd want a lot of time for an 8051 > >GNAT target, I've been studying the 8051 recently. I've convinced myself that with the aid of one more pragma [%] an Ada *subset* can straightforwardly do everything that assembler can do. (Given a machine with 4k of code ROM (and _maybe_ up to 64k of external RAM) and < 256 bytes of data RAM (and _maybe_ up to 64k of clumsily accessed external RAM) you clearly aren't going to bother with interfaces to COBOL or floating point (my estimate is that a good FP package would eat the entire ROM) and given the way the 8051 does subroutine calls it's probably going to be a good idea to ban recursion and so on. It would of course be possible to achieve assembly code efficiency using such an Ada subset, because with the aid of machine code inserts your "Ada" code could *be* "assembler" code. It would still be useful to do because of packages and such. Would there be any point in writing this up? I've had wistful thoughts about a possible product. Given that the two smart cards I've seen used 8051-like processors, and given the range of applications for smart cards and "postage stamp" computers (my word, the smart card chips are cheaper than the concrete blocks my office is made from; the possibilities for instrumentation are *awesome*) I suspect that the 8051 lookalikes still have some useful lifespan, and that there is a bigger market than one might think. Example: a lot of money hereabouts goes into gambling. How about hand-held bingo machines? Or hand-held pokies? What would happen if you had phone cards where you could gamble, and the winnings would be free calls and the losses would be dead cards? What about smart buildings with polymer-based chemical sensors hooked up to postage stamp computers communicating over twisted pairs that can *cheaply* monitor internal air pollutants? I mean, we're talking about systems where the wire would be the most expensive part! [%] The pragma is pragma Origin(non-negative constant integer expression); saying that the first byte of the textually following statement is to be at the given address. That was the only thing I saw in the 8051 book I was reading that I couldn't do in a reasonable Ada subset. -- My tertiary education cost a quarter of a million in lost income (assuming close-to-minimum wage); why make students pay even more? Richard A. O'Keefe; http://www.cs.rmit.edu.au/%7Eok; RMIT Comp.Sci.