元编程为几种输出语言

Roe*_*oel 12 javascript php c++ metaprogramming

我正在寻找一种必须编写和维护某种算法(实际上是我的代码的图形渲染子模块)的方法.我需要C++,PHP和Javascript中的算法.从理论上讲,我可以用C++编写它并将其包装到PHP扩展中; 但这本身有很多问题,并没有解决Javascript链接.

我认为,我正在寻找的是一种工具,它可以将语言(无论哪一种)转换为三种(或两种,如果源语言是三种语言之一)输出语言.我发现MetaL(http://www.meta-language.net/)似乎做了我想做的事情,但看起来也死了(自2007年以来没有更新),只针对我需要的三种语言中的一种.它需要非常灵活,并允许我更新结果 - 例如,我在我的C++和PHP渲染中使用Cairo,在Javascript端使用HTML Canvas.所以我需要为API定制某些特效.

或者,我会选择一个PHP解析器和词法分析器,它会给我一个AST,它有足够的信息让我为C++和Javascript编写生成器作为替代后端.

有任何想法吗?谢谢.

Yi *_*hao 6

你可以看看haXe.haXe是一种开源编程语言.它可以编译为JavaScript,Flash/ActionScript,php5,C++,以及将来的Java,C#.