2012-10-03 31 views

回答

3

REPL不是通常意義上的解釋器,因爲它從不直接執行代碼。你在REPL中輸入的代碼總是被編譯的,類定義也是如此。

+0

因此,我在'scala' REPL中編寫的所有內容都會被編譯。就像:閱讀編譯評估打印循環:) – Macarse

+5

是的,但誰可以發音RCEPL? –

+0

是否用編譯器或解釋器實現'eval'是'eval'的私有內部實現細節。 'eval'只是'eval',無論它是作爲解釋器還是編譯器實現。在Scala中,REPL恰好是編譯器的一個簡單包裝器,但這是一個實現細節。你可以把它作爲解釋器來實現。 –