Skip to main content
1 of 2
babou
  • 1.5k
  • 10
  • 18

I have not been following this area for a very long time, but I know systems have existed for a very long time to capture semantics or help translation. The first system for creating interpreters based on denotational semantics was SIS created by Peter Mosses around 1980. Around the same time, interactive environments started being used for program transformation and even program translation between high-level languages, based on abstract syntax manipulation. Centaur (Kahn et alii) was such a system circa 1990. However the translations I know of were programmed more or less by hand. There have been compilers based on formal semantics, but I think it was already pretty hard just to prove them correct (Coq has been used for that)

Even if you manage to capture the semantics of both your languages, trying to infer from that a translator from one to the other is likely to be beyond current technology. For one thing, programming languages do not use exactly the same high level concepts, and that is what makes translation very difficult. The best you may get is that the source language will be translated in some kind of machine code expressed in the second language. I doubt this is what you have in mind.

babou
  • 1.5k
  • 10
  • 18