2010-10-25 27 views
0

我們已經學過各種語法,並告訴如何編寫定義,但我們從來沒有編寫過任何代碼。 Scheme代碼運行的順序是什麼?Scheme代碼運行的順序是什麼?

謝謝!

+0

目前尚不清楚你的問題是什麼。嘗試張貼一些例子,並提出具體問題? – 2010-10-25 15:48:58

+0

例如,在java中,main方法首先運行,並且像C中的wise一樣調用main()。在Scheme中,沒有這樣的東西(就我所知)存在,所以程序的哪一部分首先運行? – Alex 2010-10-25 15:51:37

回答

3

的問題是有點模糊,但如果你問其評估戰略方案使用:

方案使用applicative order evaluation

編輯:好的,那不是你要求的。所以下面是我現在瞭解的問題的答案:

方案代碼從上到下執行:即,文件中的第一個表達式首先被執行,然後是下面的表達式,然後是那個下面的表達式,直到到達文件結尾。

所以,如果你有一個包含文件:

(display "hello ") 
(display "world\n") 

然後(display "hello ")是先(display "world\n")執行。

+0

非常感謝,我不敢相信我們沒有教過這個! – Alex 2010-10-25 16:27:51

+0

@Alex:由於您可能會從REPL運行大部分代碼而不是創建可運行程序,因此瞭解如何創建可運行程序並不像其他語言那樣重要。 – sepp2k 2010-10-25 16:36:08

+0

爲了記錄,MOST腳本語言從上到下運行,因爲它們沒有像「main」這樣的特定入口點,但是在許多語言中,函數定義允許在任何地方發生。 – erjiang 2010-10-25 21:48:17