Можно ли с помощью MIT-Scheme проверить объект составной процедуры?

Используя MIT-Scheme 9.x, можно ли с помощью отладчика или другого инструмента проверить анонимную составную процедуру (созданную путем возврата лямбда-функции), например чтобы узнать, какой именно код, в какой строке он исходит?

Например, я сейчас делаю что-то вроде:

(foo 2 3)

И вижу сообщение об ошибке вроде:

;The procedure #[compound-procedure 65] has been called with 2 arguments; it requires exactly 0 arguments.

... где foo делает что-то дальше dispatch (проблема здесь не в foo, оно лежит глубже). В этом примере я бы действительно хотел узнать внутреннее устройство # [составная-процедура 65], поскольку это явно не то, что я ожидал. Знает ли какой-нибудь мастер Lisp / Scheme способ получить эти детали? Спасибо.

5
задан limist 10 January 2012 в 16:37
поделиться