Re: [問題] VM 的問題
※ 引述《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
討論串 (同標題文章)
Programming 近期熱門文章
PTT數位生活區 即時熱門文章