Debugging 什么是';未知表达式';drRacket调试器中出错?

Debugging 什么是';未知表达式';drRacket调试器中出错?,debugging,racket,Debugging,Racket,我正在和drRacket一起学习编程语言。我们使用的是一种叫做pl的语言,每当我试图调试代码时,就会出现一个错误。例如: #lang pl (: add : Number Number -> Number) ( define (add x y) (+ x y)) (test (add 1 1) => 2) 运行正常,但调试时出现错误: expr语法对象迭代器:未知expr:(引用语法(:-internal add(Number->Number))#:local) 所有代码

我正在和drRacket一起学习编程语言。我们使用的是一种叫做pl的语言,每当我试图调试代码时,就会出现一个错误。例如:

#lang pl

(: add : Number Number -> Number)
( define (add x y)
   (+ x y))

(test (add 1 1) => 2)
运行正常,但调试时出现错误:

expr语法对象迭代器:未知expr:(引用语法(:-internal add(Number->Number))#:local)


所有代码在尝试调试时都会出现类似的错误,不管它是否实际运行,我已经在其他计算机上成功调试了代码。救命啊

问题似乎出在我使用的drRacket版本(6.3)上,安装旧版本修复了问题

您使用的drRacket版本是什么?另外,您从哪里获得的
pl.plt
?我有DrRacket版本6.1.1和中的
pl.plt
,调试时没有问题。我使用的是DrRacket版本6.3,我尝试了较早的版本,一切都正常。谢谢,您应该尽量减少这一点:尝试(a)删除
test
表达式并留下一个普通表达式(如果失败,则不是test宏);(b) 将语言切换到
键入的/racket
(如果失败,则不是我的语言);(c) 切换到
打字/拍打/不检查
;最后(d)切换到
racket
并删除类型声明。如果它在(a)或(b)之后工作,那么它是我的
test
宏或我的语言实现(向我发送有关它的电子邮件),在(c)或(d)之后,那么问题在类型化racket中,应该在那里提交一个bug,最后一点:我不建议在我的类中使用调试器,我自己也不使用它。我只建议使用覆盖功能。