Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!rutgers!seismo!mcvax!cernvax!ethz!heeb From: heeb@ethz.UUCP Newsgroups: comp.lang.misc Subject: Upward translation (was FOO to C translator). Message-ID: <441@ethz.UUCP> Date: Wed, 4-Feb-87 19:49:46 EST Article-I.D.: ethz.441 Posted: Wed Feb 4 19:49:46 1987 Date-Received: Sat, 31-Jan-87 20:21:56 EST References: <4009@utcsri.UUCP> Reply-To: heeb@ethz.UUCP (Hansruedi Heeb) Organization: CS Department, ETH Zuerich, Switzerland Lines: 19 In article <4009@utcsri.UUCP> greg@utcsri.UUCP (Gregory Smith) writes: >... I think it is very unrealistic to ask for a type (2) >translator program if FOO is LISP, BASIC, COBOL or even FORTRAN. At U of Dortmund (Germany) a group does research in what they call upward translation. They do BASIC to PASCAL (among others, but probably no C). They do *not* produce lots of gotos but try to recognize FOR, WHILE etc. They gave me the BASIC --> PASCAL thing (for free) and I used it on a 70K *very* messy BASIC program. I had to simplify the BASIC using shell-scripts (because the input language is too primitive) but once it eat it: MAGIC! All except the worst constructs where recognized and translated to decent structures and all gosubs were procedure calls (but without parameters). -- Hansruedi Heeb {seismo|decvax}!mcvax!cernvax!ethz!heeb