Ima*_*ist 14 programming-languages bytecode vm-implementation
我正在设计一种编译语言,编译成中间字节码.但是,我在设计字节码结构时遇到了很多麻烦.有没有人对如何用二进制表示程序有任何指示?或者,是否有任何资源(最好是免费的)如何做到这一点?我发现的最接近的是Lua解释器的字节码的描述.
编辑:更多信息:我正在实现我自己的垃圾收集方案,该方案针对不可变性和并发性进行了大量优化.为了提高效率,我需要一些独特的字节码指令,允许程序与垃圾收集方案进行交互.
不要设计你的字节码,这是不必要的!
我建议您查看LLVM和GNU Lightning,它们为您做了很多艰苦的工作,并且只要求您在注释事项并解决范围等问题后创建类似AST的模式进行翻译.
龙书还包括一些关于字节码的部分.计算机编程的艺术也可能有所帮助,因为Mix语言陈述了一些(过时的)但重要的设计决策.
真的,你的中间代码应该是:
这完全取决于您的要求,除非您需要,否则不要设计自己的IR /字节码.如果其他东西适合,请使用它!你不需要维护它!
| 归档时间: |
|
| 查看次数: |
4572 次 |
| 最近记录: |