这段时间我研究了一下java虚拟机规范,感觉编写一款符合JDK1.4规范的java编译器并不是很难,理由如下:
1) java虚拟机中的指令是面向堆栈的结构,指令的操作数绝大部分都隐含在堆栈中,因此代码生成非常容易
2)java编译器不需要作任何优化,公共子表达式消除、循环不变量外提、寄存器分配等优化全部都是在虚拟机中进行的。
如果使用lex/yacc等编译自动话工具的话,我觉得大家合作好的话用两个月(保守一点最多就3个月吧)就可以完成一个实用的java编译器了,我说的实用是指能够取代jdk 1.4版中的javac此外,我打算使用C语言来开发这款编译器,这样编译的速度也会比使用java编制的javac快很多啊,不知道我的想法对吗,CSDN的高手们谈谈想法啊。
------解决方案--------------------
顶一个!!!支持,算我一个!!
------解决方案--------------------
没能力.顶
------解决方案--------------------
哈哈,裤衩牛人!
------解决方案--------------------
不会c
------解决方案--------------------
jy.com
jf.com
------解决方案--------------------
高手。。 小菜路过
------解决方案--------------------
大哥们做梦呢
javac只是一个启动器
实际解释不是它
------解决方案--------------------
- -!
------解决方案--------------------
词法分析 语法分析 还要生成中间代码 感觉3个月出不来吧
------解决方案--------------------
不是我想鄙视你,你连javac都搞不清楚,还3个月不到开发java编译器。
------解决方案--------------------
qq.exe 有1.69m 那么大 那么整个qq程序就1.69m?
------解决方案--------------------
飘过。。
------解决方案--------------------
不是很容易啊
------解决方案--------------------
至少现在中国开发编译器的牛人还未出现
------解决方案--------------------
javac.exe只是个壳子
------解决方案--------------------
mark!
------解决方案--------------------
帮顶!
------解决方案--------------------
---------------------
------解决方案--------------------
支持你,不过我的能力还是帮不上你的忙,加油!做就一定能成的。别放弃!
------解决方案--------------------
mark
------解决方案--------------------
楼主真强,睡梦中登录CSDN发贴竟然没打错字~~~~~~``
------解决方案--------------------
up
可惜我實在不會,不菜一個,不然我一定來一個..
KK
------解决方案--------------------
真是牛人
佩服佩服
三个月后
再见高低
------解决方案--------------------
其实吧,,做个bat 保守估计1个星期 就ok了
------解决方案--------------------
有时间和能力写编译器还不如自己开发个专业领域的JVM呢。
建议你去研究二进制码注入(class注入),AspectJ正是火的时候,为AspectJ编译器提点性能作作贡献也不错。
------解决方案--------------------
路过
------解决方案--------------------
有雄心是好事,关键要去做
当然也别想当然认为2,3个月就能写好
------解决方案--------------------
关注生活,关注牛人