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.1 required=5.0 tests=BAYES_00, PP_MIME_FAKE_ASCII_TEXT autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII X-Google-Thread: 103376,60e2922351e0e780 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-11-18 14:42:04 PST Path: archiver1.google.com!news2.google.com!fu-berlin.de!peer01.cox.net!cox.net!small1.nntp.aus1.giganews.com!nntp.giganews.com!cyclone1.gnilink.net!spamkiller2.gnilink.net!nwrdny03.gnilink.net.POSTED!53ab2750!not-for-mail From: "Stephane Richard" Newsgroups: comp.lang.ada References: <3FB0B57D.6070906@noplace.com> <3FB22125.1040807@noplace.com> <3FB3751D.5090809@noplace.com> <3FB8B9BC.5040505@noplace.com> <3FBA1118.4060105@noplace.com> Subject: Re: Re-Marketing Ada (was "With and use") X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Message-ID: <0fxub.48425$bQ3.12107@nwrdny03.gnilink.net> Date: Tue, 18 Nov 2003 22:42:04 GMT NNTP-Posting-Host: 129.44.79.240 X-Complaints-To: abuse@verizon.net X-Trace: nwrdny03.gnilink.net 1069195324 129.44.79.240 (Tue, 18 Nov 2003 17:42:04 EST) NNTP-Posting-Date: Tue, 18 Nov 2003 17:42:04 EST Xref: archiver1.google.com comp.lang.ada:2658 Date: 2003-11-18T22:42:04+00:00 List-Id: Maybe the Ada folks need to design a C/C++ to Ada "binder", that is able to reliably take a C/C++ include file, and generate a spec and body that can be used by other Ada programs (in thinish binding mode). THIS NEEDS TO BE A STANDARD TOOL, that can be counted on to work (no tweaking required), to be consistent, and to be available with the COMPILER toolset. About a month and 1/2 ago, I started a project, I Affectionally call AdaCREATE (C++ Reverse Engineering Ada Translating Engine) And your first paragraph here is one of the reasons why. C++ unline C is so different in minding than Ada (for object structures, includes, and a lot of other stuff (biting my tongue here, but among other things, the += family of operators....no comments please ;-). That direct translation from C++ to Ada is quite simple impossible. Much like C++ to ObjectPascal It's usually better to just port it to Pascal (rewrite the logic, instead of the source code). The same can be applied here between Ada and C++. 1. Take the C++ code and derive the logic, 2. Translate to perhaps UML or a sub form of scripting language (so I don't have to worry about UML compatibility per se). 3. Take the Scripting language and Translate that to Ada. Of course this will be more than a simple translation and therefore will take longer performance wise (Not sure yet how much longer ;-), but I'm pretty sure that the output of it, being based on logic instead of the C++ paradigm, will be safer than any direct translation between Ada and C++. -- St�phane Richard "Ada World" Webmaster http://www.adaworld.com