[开源]ApolloClr一个新的IL解释器,并且能运行在Web上
导言
隔壁有L#,又有ILRuntime,理论上不应该写这个东西。
最近补.net IL 写Aop,想想顺手写个IL解释器。还能解决下协程实现问题,也就开了这个项目,希望努力能写完吧。
期望
1.至少比以上2个实现都稍微快一点,至少现在是。
2.有个JS版本(移植仅仅是为了好玩,肯定很慢,现在有个预览版本,
3.除了不支持指针等(也没什么办法支持)兼容率最好达到一个很高的程度。
4.后续会去弄一堆的测试来作为目标,努力保证运行结果一致。
5.在.Net基础穿透性能上,做到最优,如果有兴趣拿去当Unity热更,肯定没问题。
提示
早期版本
实现列表
1.运行堆栈模拟
2.通过SilAPI对IL进行解析
3.基础函数方法和类型转换
4.基础Clr穿透调用,ILVM调用C#,C#调用ILVM
5.基础类实现,调用字段/静态字段
6.基础类型转换
7.基础跳转比较以及流程控制
8.早期的异常支持,try catch finaly
9.数组指令的实现