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=2.6 required=5.0 tests=BAYES_40,INVALID_DATE, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Xref: utzoo comp.software-eng:5669 comp.lang.ada:5466 comp.lang.fortran:5416 comp.lang.pascal:6792 comp.lang.c:39368 comp.lang.c++:13540 alt.cobol:348 Path: utzoo!utgpu!cs.utexas.edu!uunet!weyrich!orville From: orville@weyrich.UUCP (Orville R. Weyrich) Newsgroups: comp.software-eng,comp.lang.ada,comp.lang.fortran,comp.lang.pascal,comp.lang.c,comp.lang.c++,comp.lang.modula-2,alt.cobol Subject: Automatically translating programs to other languages Message-ID: <1991May19.030141.15941@weyrich.UUCP> Date: 19 May 91 03:01:41 GMT Reply-To: orville%weyrich@uunet.uu.net Followup-To: comp.software-eng Organization: Weyrich Computer Consulting List-Id: I am putting together a proposal for a program translation tool which translates older languages into C++ or Ada. I would appreciate any information the net can help me with. I expect to post the results, and hope to stimulate some discussion in this area. I am aware of some work which translates one language or dialect of a language into another language or dialect. These include: TAMPR -- can translate FORTRAN dialects. Later papers also describe it being used to translate LISP into FORTRAN. See "Multiple Program Realizations Using the TAMPR System," by Kenneth W. Dritz, in Portability of Numerical Software (Lecture Notes in Computer Science # 57, Springer-Verlag (1977). TPL -- originally developed to translate FORTRAN dialects. May be being extended now to Ada. Contact Professor Paul A. D. de Maine, Department of Computer Science and Engineering, Auburn University, Auburn, AL 36849. f77 on some UNIX systems is implemented as a front-end which translates the FORTRAN to C, which is then further processed by the C compiler. Janus Ada has a tool to translate Turbo Pascal into Janus Ada. Logitech has a tool to translate Turbo Pascal into their Modula-2. Turbo Pascal has a tool to translate its version 3.0 into its version 4.0. Cobalt-Blue has a product called FOR_STRUC which I understand converts FORTRAN to C++. Stuff to translate BASIC to C, Pascal to C, etc. also exists. I suspect that many consulting/contract job shops have tool suites that they use in-house. I will of course post a summary to the net of the responses which I receive. Please e-mail responses to orville%weyrich@uunet.uu.net or else post to comp.software-eng (note the followup line). Please excuse the cross-posting, but I want to reach all the people who are fanatic about each of the languages listed. My questions: What products are available now, and what (if any) research is presently being done in this field? I have heard rumors to the effect that the present tools are less than satisfactory. I would be interested in hearing of the experiences (good and bad) of anyone who has used these tools. Bad experiences are particularly useful, since they help clarify where improvements need to be made. The main problems that I am aware of are: 1) The translated results are not always idiomatic in the target language. 2) The translated results are not always efficient. 3) The translations are not always complete, or correct. I am particularly interested in stuff which translates BASIC or COBOL into Pascal, C, C++, Ada, etc. This is interesting because BASIC and COBOL usually use global variables for everything, while idiomatic Pascal, C, C++, Ada, etc. use local variables when possible. Do translator tools from BASIC or COBOL attempt to "localize" variables? References to any articles on the subject would also be appreciated. Does anyone know of companies interested in this kind of stuff that I might offer my services to (as either a consultant or an employee?) [This is not a solicitation of a job at this time, but I am trying to find out who the "movers and shakers" are in this field]. Thanks, Orville. -------------------------------------- ****************************** Orville R. Weyrich, Jr., Ph.D. Certified Systems Professional Internet: orville%weyrich@uunet.uu.net Weyrich Computer Consulting Voice: (602) 391-0821 POB 5782, Scottsdale, AZ 85261 Fax: (602) 391-0023 (Yes! I'm available) -------------------------------------- ******************************