Re: [問題] VM 的問題

看板Programming作者 (ephesians)時間18年前 (2007/05/20 13:29), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串6/14 (看更多)
※ 引述《gw.bbs@bbs.cis.nctu.edu.tw (walter)》之銘言: : ==> 在 qrtt1.bbs@bbs.sayya.org (foolish) 的文章中提到: : > 語言是語言的事 : > 實作是實作的事 : > 沒有人規定發明一種語言只能被用來寫在紙上 : > 或大聲說出來 : 騎腳踏車出門,有個獨木橋要過,只好把腳踏車扛在肩上過河。 : 那腳踏車到底是拿來扛的還是拿來騎的?我還是認為腳踏車是 : 拿來騎的。 : 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執行檔,你管我? VM是怎麼樣的東西大家都知道,你可以不用重覆說明它! 對話中一味地把對方當idiot,討論串的程度就會維持在淺淺的水平. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.160.212.245
文章代碼(AID): #16Jzocha (Programming)
文章代碼(AID): #16Jzocha (Programming)