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-15 16:36:01 PST Path: supernews.google.com!sn-xit-03!supernews.com!news-out.usenetserver.com!news-out.usenetserver.com!newsfeed.direct.ca!look.ca!newshub2.rdc1.sfba.home.com!news.home.com!news1.frmt1.sfba.home.com.POSTED!not-for-mail From: tmoran@acm.org Newsgroups: comp.lang.ada Subject: Re: Ada to C++ translator? References: <3A8C6843.B46006D6@lmco.com> X-Newsreader: Tom's custom newsreader Message-ID: Date: Fri, 16 Feb 2001 00:34:19 GMT NNTP-Posting-Host: 24.20.190.201 X-Complaints-To: abuse@home.net X-Trace: news1.frmt1.sfba.home.com 982283659 24.20.190.201 (Thu, 15 Feb 2001 16:34:19 PST) NNTP-Posting-Date: Thu, 15 Feb 2001 16:34:19 PST Organization: Excite@Home - The Leader in Broadband http://home.com/faster Xref: supernews.google.com comp.lang.ada:5293 Date: 2001-02-16T00:34:19+00:00 List-Id: >We are re-using code from a legacy system, and we have spent a lot of >effort on binding this legacy Ada code to the RTOS we are using. I don't quite understand the situation: You had N lines of Ada running, using an old RTOS, and now you are moving to a new RTOS and finding there were M system calls that need changing, and M is a painfully large number. The proposal is to convert to C/C++, which saves writing "pragma Import" etc for the system calls. If the automated conversion handles 90%, you are left with N/10 things to manually fix, and I would think N/10 >> M. If the system calls of the new RTOS are even slightly different, which presumably they are or the problem wouldn't exist, you'll still have to do work on them, even if they're now written in C. If the structure of the RTOS is different, you'll also have to change the structure of the app, whether it's in C or Ada, and that's almost sure to be worse with a (semi)mechanically translated C than with the original, lucid(?) Ada. If the number of *different* system calls is not high, wouldn't it be easier to just create a layer that translates old RTOS calls into new RTOS calls?