Scheme 在打字拍子中使用痕迹
在使用键入的Racket时,我很难设置Scheme 在打字拍子中使用痕迹,scheme,lisp,racket,typed-racket,Scheme,Lisp,Racket,Typed Racket,在使用键入的Racket时,我很难设置跟踪模块-我在REPL中的尝试如下: #lang typed/racket (require/typed racket/trace [trace (Symbol * -> Void)]) (define (add-four [num : Number]) (+ 4 num)) (trace add-four) (add-four 3) 这是从下面的和文档中得到的,但是我在导入时在trace类型注释中得到了错误
跟踪
模块-我在REPL中的尝试如下:
#lang typed/racket
(require/typed racket/trace
[trace (Symbol * -> Void)])
(define (add-four [num : Number])
(+ 4 num))
(trace add-four)
(add-four 3)
这是从下面的和文档中得到的,但是我在导入时在
trace
类型注释中得到了错误trace:trace
中的错误语法-不确定哪里出错了 跟踪
是一种宏形式,而不是函数。它没有一个像1一样的值,你不能在它周围放一个普通的契约,你也不能在它上面放一个普通的类型。有些宏在类型化的racket中不能很好地工作,除非它们是专门为类型化的racket设计的。现在,有时候唯一的解决办法就是定义新版本的itAhh。我不确定我的宏排骨是否达到了标准,但也许我会再进一步研究这个问题。当我现在使用打字球拍时,我将不使用跟踪
。谢谢,我只是想确保我没有错过任何简单的修复方法——如果你把你的评论作为答案转发,我会接受:)