用于“简单”程序的通用元语言

时间:2010-12-09 16:45:10

标签: code-generation portability universal portable-applications

我意识到不可能有一种最适合一切的语言。

但是有一类简单的程序,其源代码在任何语言中看起来几乎相同。

我想的不仅仅是“你好世界”,还有算术,也许是字符串操作,你通常会在实用类中看到的基本内容。

我想将我的实用程序保留在这种元语言中,并将其自动翻译成一堆流行的语言。我现在手工做这件事。

同样,我不要求翻译每一个可能的程序。我在想一种非常有限的,简单的语言,但是超级便宜。

你知道那样的事吗?有没有理由不存在?

5 个答案:

答案 0 :(得分:2)

检查Haxe及其Wikipedia页面。它是开源的,其主要目的是您所描述的:仅从一个源生成多种语言的代码。

答案 1 :(得分:1)

如果您发现没有通用语言,您可以使用基于模板的代码生成器尝试一种实用的模型驱动开发方法。

在模板上,您可以保留算法的基本概念。然后,您将在必要时以一种或多种特定语言(C ++,Java,JS,Python)添加此算法的代码。无论如何,无论您选择何种语言或方法,您都必须这样做。配置开关会为您应用的任何模板选择正确的语言。

AtomWeaver是一个代码生成器,可以使用模板并使用ABSE作为建模方法。

答案 2 :(得分:1)

我做了一些寻找并找到了这个。 https://www.indiegogo.com/projects/universal-programming-language 看起来很有趣

答案 3 :(得分:0)

几乎所有你选择的语言都会有一些不以自然方式映射到另一种语言的功能。我能想到的最接近的东西可能是JavaScript的有用子集。当然,如果您是语言作者,您可以根据需要限制它,只提供几乎任何语言(循环,条件等)共有的构造。

出于可变性的目的,XML表示最好,但你不想在其中编码。

答案 4 :(得分:0)

经典的Pascal非常简单。 Oberon是另一个类似的选择。或者你可以发明自己的衍生语言,类似于计算机科学教科书中的伪代码。将翻译器从其中一种语言实现为任何体面的现代命令式语言都是微不足道的。