3

私は DrRacket IDE が大好きですが、現在、DrRacket IDE から独立したいペット プロジェクトを構築しています。つまり、R5RS 標準手順のみを使用することに専念しています。

問題は、DrRacket には「エラー」と呼ばれるこの手順があり、これを引き続き使用したいのですが、標準で見つけることができません。

私が知りたいのは、コードがSchemeの異なる実装間で移植可能であるように、標準手順のみを使用してその「エラー」手順をエミュレートする方法があるかどうかです。

「表示」を試してみましたが、出力中にエラーを通知しないために、私が望むものではないようです。

4

2 に答える 2

4

これは、講師が提供してくれた実装です。

;;; create binding for error
(define error #f)

;;; capture toplevel continuation
;;;  assign a function to error, allowing a variable number of arguments to
;;;  be passed
(call-with-current-continuation (lambda (k)
              (set! error
                (lambda error-arguments
                  (display ">>>> ERROR ")
                  (newline)
                  (k error-arguments)))
              'done)) 
于 2011-11-02T20:43:32.343 に答える
3

さて、これによると:http ://srfi.schemers.org/srfi-23/srfi-23.html 、エラー手順はかなり広く利用可能であるため、それを使用しても安全だと思います。

于 2010-06-25T18:21:10.023 に答える