REPL(read-eval-print loop)是一個(gè)用于試驗(yàn)Clojure代碼的工具。 它允許您與正在運(yùn)行的程序交互,并快速嘗試如果事情按照他們應(yīng)該工作。 它通過向您提供一個(gè)提示,您可以在其中輸入代碼。 然后它讀取您的輸入,評估它,打印結(jié)果和循環(huán),再次提示您一個(gè)提示。
該過程實(shí)現(xiàn)了在大多數(shù)其他語言中不可能的快速反饋循環(huán)。
可以在Leiningen中通過在命令行中鍵入以下命令來啟動(dòng)REPL會話。
lein repl
這將啟動(dòng)以下REPL窗口。
然后,根據(jù)需要在REPL窗口中開始設(shè)置Clojure命令。
要在Eclipse中啟動(dòng)REPL會話,請單擊“菜單”選項(xiàng),轉(zhuǎn)到“運(yùn)行方式”→“Clojure應(yīng)用程序”。
這將在控制臺的輸出窗口中單獨(dú)啟動(dòng)一個(gè)新的REPL會話。
從概念上講,REPL類似于安全Shell(SSH)。 以同樣的方式,您可以使用SSH與遠(yuǎn)程服務(wù)器交互,Clojure REPL允許您與運(yùn)行的Clojure進(jìn)程交互。 此功能可以非常強(qiáng)大,因?yàn)槟踔量梢詫EPL附加到實(shí)時(shí)生產(chǎn)應(yīng)用程序,并在運(yùn)行時(shí)修改程序。
REPL包括一些有用的變量,廣泛使用的是特殊變量* 1,* 2和* 3。 這些用于評估三個(gè)最近表達(dá)式的結(jié)果。
以下示例顯示如何使用這些變量:
user => "Hello" Hello user => "World" World user => (str *2 *1) HelloWorld
在上面的示例中,前兩個(gè)字符串分別作為“Hello”和“World”發(fā)送到REPL輸出窗口。 然后,* 2和* 1變量用于調(diào)用最后2個(gè)計(jì)算表達(dá)式。
更多建議: