2011-02-11 54 views

回答

2

文檔不提供答案,但沒有代碼樣本,所以這裏是一個:

(define (handler x) 
    (display "Handling Error: ")(display x)(newline) 
    (restart 1)) 

這裏我們只是顯示錯誤(什麼文件所稱的「條件」) ,無所事事。

有這項功能處理所有條件做:

(bind-default-condition-handler '() handler) 

或者你也可以換一個代碼塊:

(bind-condition-handler '() handler (3 4)) 
+0

dkinzer,code是有目的的錯誤,以便處理異常。 – dvingo 2014-03-19 22:54:53

0

由於dvingo指出,該文檔不顯示任何實例以便這裏是另一個使用「錯誤」內置特殊格式的例子(至少在MIT方案中):

(define (errors-if-zero x) 
    (if (= x 0) 
    (error "x is 0") 
    x))