[comp.sources.wanted] WANTED : DEAD OR ALIVE - "C" to ADA Translator

philm@astroatc.UUCP (Phil Mason) (07/01/88)

I have an important application for a "C" to ADA Translator.  It doesn't even
have to translate all "C" constructs or strange pointer operations.  

I thought I saw one on the net within the last two years.  Was I dreaming??

Any help would be most appreciated.

Commericial/Public Domain/Shareware solutions welcome.


- - - Philm

philm@astroatc.UUCP (Phil Mason) (07/01/88)

Blast!  My signature got left off the previous posting.

Here it is :


-- 
Kirk  : Bones ?                |  Phil Mason, Astronautics Technology Center
Bones : He's dead Jim.         |  Madison, Wisconsin - "Eat Cheese or Die!"
...seismo-uwvax-astroatc!philm |  I would really like to believe that my
...ihnp4-nicmad/               |  employer shares all my opinions, but . . . 

zweig@csed-1.IDA.ORG (Jonathan Zweig) (07/08/88)

In my experience, it takes a month or so to come up to speed as a so-so
Ada programmer if you've got experience programming in other languages.

C to Ada translation? I vote hiring somebody to do it by hand at five or
six bucks an hour. If the code is too icky to translate by hand with a
sufficiently high degree of confidence that you've preserved the
functionality, then rewrite the program(s).

-Johnny Zweig
Institute for Defense Analyses/ Computer and Software Engineering
Division.

wcs@skep2.ATT.COM (Bill.Stewart.[ho95c]) (07/14/88)

In article <401@csed-1.IDA.ORG> zweig@csed-1.IDA.ORG (Jonathan Zweig) writes:
:C to Ada translation? I vote hiring somebody to do it by hand at five or
:six bucks an hour. If the code is too icky to translate by hand with a
:sufficiently high degree of confidence that you've preserved the
:functionality, then rewrite the program(s).

Translating Pascal or Fortran to C is reasonable, since the semantics
of C (almost) include the semantics of the other two languages.
Translating C to Ada is another story - there's too much difference in
semantics.

First of all, C makes heavy use of pointers, which Ada
considers to be evil and dangerous, and sometimes it uses them for
things that really *are* evil and dangerous and just can't be faked.
Second, C is a weakly-typed language, and real programs often take
advantage of this - a translator would need too much intelligence about
what's really going on to work around these problems.

Even if you find a translator, don't expect the resulting Ada code to
be human-readable or maintainable - and if you lose that, you lose most
of the reason for Ada.  Either higher some <undergrads or contractors>,
or check out the interfaces between C and Ada provided by your Ada
system.  You'll probably have to write a lot of package definitions.

If you're only using Ada because you're working on a military contract
(shame on you) see how flexible your contracting officer is about such
things - while new code may have to be Ada, existing code usually can
be grandfathered in.
-- 
#				Thanks;
#Bill Stewart, AT&T Bell Labs 2G218 Holmdel NJ 201-949-0705 ho95c.att.com!wcs