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.4 required=5.0 tests=BAYES_00, GUARANTEED_100_PERCENT,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,265ac57bc5c38c84 X-Google-Attributes: gid103376,public From: Wiljan Derks Subject: Re: Pascal to Ada Tools? Date: 1996/05/16 Message-ID: <319B7F90.76C1@nl.cis.philips.com>#1/1 X-Deja-AN: 155188607 references: <4ne1km$j8d@news.pacifier.com> content-type: text/plain; charset=us-ascii organization: Philips mime-version: 1.0 newsgroups: comp.lang.ada x-mailer: Mozilla 2.0 (WinNT; I) Date: 1996-05-16T00:00:00+00:00 List-Id: Steve Doiel wrote: > > I am looking for a cheap (free) Pascal to Ada translator. Nearly a year ago I > posted a message to this effect and the most positive response I received was > from a company that would do a 100% guaranteed translation for $1 per SLOC. > > I have come to the conclusion that the only way I will get such a translator > is to write it myself. This also gives me the opportunity learn more about > Ada, since I am new to the language. > ... > Questions: > Does anyone know of better tools for performing this task? > Is there somewhere that I might find pieces of the translator that are > already done? > I have also a lot of code in pascal (actually EPASCAL from DEC). I came to the same conclusion as you: write my own translator. So that is what I did. It converts EPASCAL reasonable wel to ada. The more standard pascal it is the better it will be translated. I use a general compiler like program: - using aflex and ayacc to generate a parser that build a tree - going through the tree rearanging things - then output the stuff in ada My program can read many pascal modules at once. This allows the converter to use the in and export information of the modules and thus generate the right ada code. If your interested then let me know. If you want the program to behave differently then you must modify it yourself. For those interested in VAXELN (thats where EPASCAL comes from): I also wrote a port of the VAXELN kernel primitives using ada based on NT. Wiljan