exp*_*rer 4 programming-languages
假设我为其中一个托管代码环境(.NET/JVM)设计了一种新的编程语言.我现在可以通过简单地编写一个翻译器来实现它,该翻译器将这种新语言的源代码翻译成平台的主要语言(C#/ Java),然后让平台的编译器和其他工具处理其余的过程吗?是否有任何简单的概念证明,这种方法的例子?
Mic*_*and 6
是的,只要语义映射正确,您就可以这样做(例如,在将JavaScript代码映射到C#等语言时必须小心,因为范围规则不同).
它不在托管平台上,但您可以查看Vala.它是一种类似C#的语言,编译为C.Eiffel也编译为C(并支持编译为Java).
但是,如果您使用的是托管平台,则可能需要直接查找字节码.Java字节码并不难发出,因为VM会处理并提供更复杂的编译指令(例如管理堆栈帧),VM可以消除其他毛刺角落,例如寄存器分配.
归档时间:
15 年 前
查看次数:
311 次
最近记录:
14 年,5 月 前