看板Programming
标 题Re: [问题] VM 的问题
发信站交大资科_BBS (Mon May 21 15:01:26 2007)
转信站ptt!ctu-reader!ctu-peer!news.nctu!news.cis.nctu!cis_nctu
==> 在 [email protected] (ephesians) 的文章中提到:
> ※ 引述《[email protected] (walter)》之铭言:
> : Java 的原意是"write once, run everywhere" 在这想法下,
> : 必须要 compile 成 byte code, 然後在 VM 透过一个 engine
> : 去跑 byte code。我们写出来的 Java 程式就可以透过网路送
> : 到任何有 Java VM 的机器跑。这样的用法如果硬是 compile
> : 成 machine code 就无法达成。
> : 如果只是用於特定的 case, compile 成 machine code 是可
> : 行的。不过 Java 的原意还是"write once, run everywhere"。
> : 在 VM 下跑才能享受到 Java 跟其他语言的不同。
> 可以不用在原意上打嘴炮.
> 那只不过是根据Java源生的历史,是要做一种WORE的程式,因此弄出一层middleware.
> 不过,暂时忘掉Java这个名字,暂时忘掉VM与中介码,
> 假想咱们是另一个时空的人,
> 我们可以设计出一种新的程式语言,它的程式写法是这样:
> class Test { public static void main(String[] x) {
> System.out.println("Hello!");
> }
> 它是 *一种新的编译式程式语言,从物件导向式的语法编译为机器码* !!!
> 这样子不行吗? 非VM不可吗?
> 说句粗鲁些的话,我爱用gcj把Java程式编译成elf执行档,你管我?
语法只是一个语言的"皮", 如果都编成机器码,那 java 跟其
他的语言并没有什麽不同,而且我只是表明编成机器码的用法没
办法用到 java 的重要特性。编成机器码只能用於特定的 case,
只要能跑,没人管你。
--
* Origin: ★ 交通大学资讯科学系 BBS ★ <bbs.cis.nctu.edu.tw: 140.113.23.3>