球拍很快。但是当我使用Typed Racket并运行代码时,我发现类型检查器很慢。
运行此代码#lang typed/racket
(struct: pt ([x : Real] [y : Real]))
(: distance (-> pt pt Real))
(define (distance p1 p2)
(sqrt (+ (sqr (- (pt-x p2) (pt-x p1)))
(sqr (- (pt-y p2) (pt-y p1))))))
类型检查器需要4-6秒才能在我的电脑上工作(i7,4g内存)
我尝试了另一台计算机并且它完全相同
我犯了一些错误吗?如何更快地制作类型检查器?
答案 0 :(得分:1)
不幸的是,没有任何东西可以真正改变,以使类型检查器运行得更快。如果您使用#lang typed/racket/base
代替#lang typed/racket
,事情可能会更快一些。但由于各种原因,Typed Racket的类型检查器必须解决一些难题,因此速度不快。