經過幾年的節目,似乎時間終於出擊SICP。但是,我並不想編輯和運行Emacs中的所有內容,而是使用其他編輯器和簡單的makefile來運行所有練習。這看起來並不完全正典,因爲我找不到任何與運行文件一樣基本的東西,除非某些「失敗」。那麼,如何外殼上運行方案,使其加載一個文件,評估在序列中的每個表情,並儘快與非零退出代碼終止,因爲它遇到了在評估爲#f
或退出代碼的聲明零如果整個文件被評估成功?最接近的事到目前爲止的解決方案:運行SICP計劃文件,如快速測試失敗
$ cat ch1.scm
...
(= 1 2)
$ scheme --load ch1.scm
...
Loading "ch1.scm"... done
1 ]=>
編輯:換句話說,是有一些方法ch1.scm負荷期間做出評價停止,如果任何表達式其中評估爲#f
?
你是不是在尋找像RackUnit(一個單元測試庫http://docs.racket-lang.org /rackunit/index.html)? –
這將是最後的手段,因爲在像Python和Bash這樣的語言中,這將是矯枉過正的。 – l0b0
基本上什麼是你想在bash做,可以直接在方案來完成,給我你的方法看起來像矯枉過正:) –