use*_*508 4 smalltalk compilation pharo
据说Pharo的VM(CogVM)在Smalltalk中被开发,测试,分析等,但是Smalltalk代码被转换为C,然后使用默认的系统C编译器与一些OS抽象C代码一起编译.
好吧,我想做类似的事情,我不想使用Pharo开发,测试和分析代码,但是然后将其编译为C.我怎么能这样做?如何编译到C的工作原理?Pharo是否附带Smalltalk to C转换器?我怎么能调用它?它是否编译完整的Smalltalk,或者我必须使用某种Smalltalk子集?有没有关于它的好文件?
Pharo VM 托管在github上.按照步骤构建它,你将获得一个名为"generator.image"的Smalltalk图像,你可以运行它(它是一个常规图像).在该图像内部,您将找到VMMaker软件包,该软件包负责从用于此的特殊Smalltalk方言生成C代码(称为Slang;它是Smalltalk的子集).查看生成器映像中的代码,以了解它的作用.首次打开图像时,工作区中还包含一些信息.
只要你拥有C源代码,它就基本上是直接的C编译(我们使用Cmake + gcc/clang).
至于文档:您应该阅读蓝皮书.
正如@Leandro Caniglia在评论中指出的那样,Slang的目的是为VM生成C源代码.它旨在简化到C的翻译.这并不意味着:
| 归档时间: |
|
| 查看次数: |
395 次 |
| 最近记录: |