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.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,a9bbfb8cd49f1a51 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news2.google.com!newsread.com!newsprint.newsread.com!news-east.rr.com!news.rr.com!newscon06.news.prodigy.com!prodigy.net!newsfeed-00.mathworks.com!nntp.TheWorld.com!not-for-mail From: Robert A Duff Newsgroups: comp.lang.ada Subject: Re: Isn't this in favour of Ada?? Date: 21 Jul 2005 11:32:01 -0400 Organization: The World Public Access UNIX, Brookline, MA Message-ID: References: <42d64dde$0$64794$edfadb0f@dread12.news.tele.dk> <8764vcdv2f.fsf@deneb.enyo.de> <__NCe.5411$oZ.1564@newsread2.news.atl.earthlink.net> NNTP-Posting-Host: shell01.theworld.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: pcls4.std.com 1121959921 10066 192.74.137.71 (21 Jul 2005 15:32:01 GMT) X-Complaints-To: abuse@TheWorld.com NNTP-Posting-Date: Thu, 21 Jul 2005 15:32:01 +0000 (UTC) User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 Xref: g2news1.google.com comp.lang.ada:3721 Date: 2005-07-21T11:32:01-04:00 List-Id: Marin David Condic writes: > Besides, this can only work if you have an operating system. It *can* work without an operating system. >... If you > *are* the operating system, you'd have to do something to bump the > hardware to make an interrupt happen Right. >... and this may or may not be possible > in all cases. It's possible for many interrupts on many systems, with or without an OS. Many machines have a "trigger interrupt" instruction. I wouldn't insist that the "trigger interrupt" Ada routine be completely portable. After all, the names of the interrupts are inherently nonportable. It's still useful to have a standard procedure, for those systems where it can work. I'd define it to raise an exception for interrupts that cannot be triggered.uun >... This is why I say if Ada had something like a "signal" > entity that is typically tied to an interrupt, but (since its an Ada > thing) can be triggered by some Ada mechanism, then you've got the > problem solved. You could probably "Roll Your Own" - but I'm not sure > how to do that and still utilize Ada's normal mechanisms for interrupt > processing. I think such a signal mechanism would add some inefficiency. Perhaps not much, but when you're using interrupts on a bare machine, you want to be as close to the metal as possible, and Ada's current design allows for that. I suspect that rolling your own will give better results, because then the programmer is in charge of the efficiency tradeoffs, and the programmer can take advantage of the particular systems of interest, whereas the language designer has to be portable to pretty much every machine under the Sun. - Bob