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-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,1d52a75fd633fefc X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-02-16 07:21:19 PST Path: supernews.google.com!sn-xit-02!supernews.com!nntp-relay.ihug.net!ihug.co.nz!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.stanford.edu!feed.textport.net!newsranger.com!www.newsranger.com!not-for-mail Newsgroups: comp.lang.ada From: Ted Dennison Sender: usenet@www.newsranger.com References: <3A844255.24A4DBA3@lmco.com> <3A866B28.CE67B4A0@yyy.zzz> <3A8C6AA3.3F90043D@lmco.com> Subject: Re: Ada to C++ translator? Message-ID: Date: Fri, 16 Feb 2001 15:20:16 GMT NNTP-Posting-Host: 127.0.0.1 X-Complaints-To: abuse@newsranger.com X-Trace: www.newsranger.com 982336816 127.0.0.1 (Fri, 16 Feb 2001 10:20:16 EST) NNTP-Posting-Date: Fri, 16 Feb 2001 10:20:16 EST Organization: http://www.newsranger.com Xref: supernews.google.com comp.lang.ada:5302 Date: 2001-02-16T15:20:16+00:00 List-Id: In article <3A8C6AA3.3F90043D@lmco.com>, Robert Brantley says... >They didn't use the Ada tasking manager when they originally developed the >code, apparently because it was to slow. Heh. Not likely. Ada tasking execs generally fall into one of two categories: 1) Uses the OS "threading" capabilities. In this case, it will be pretty much *exactly* the same speed in task switching as the OS. The main difference is that the Ada tasking exec is debugged already, while a custom one you make you will have to debug yourself. 2) Uses its own tasking code within a single OS process/thread. This is usually significantly *faster* that OS threads, since it generally doesn't incur a lot of system call overhead, as well as overhead for all the extra fancy features an OS process/thread scheduler has to support. More likely is that they didn't use Ada tasking becuase they needed real-time performance, and Ada83 didn't support real-time tasking very well (it lacked the "delay until" feature). Its a shame you can't just rewite the Ada83 code in Ada95 instead of C++. It is actually possible to write a *portable* real-time scheduler in Ada95 (no OS calls whatsoever). The project I'm working on has actually done this. With C++ you are going to have to go through this same painful porting effort every time you switch platforms. I don't envy you at all. --- T.E.D. homepage - http://www.telepath.com/dennison/Ted/TED.html home email - mailto:dennison@telepath.com