如何在不打印顶级表达式的情况下“需要”文件?

时间:2013-11-06 12:46:47

标签: scheme lisp racket

档案a.rkt

#lang racket
(provide f)
(define (f) 10)
(f)

档案b.rkt

#lang racket
(require "a.rkt")

然后当我运行b.rkt时,我会得到f这就是我想要的。但是我的REPL中也会打印10,我不想要。

如果我的REPL上没有打印require,我如何a.rkt提交10

由于

1 个答案:

答案 0 :(得分:5)

f的{​​{1}}条款中将您对module的电话加密:

a.rkt

#lang racket (provide f) (define (f) 10) (module+ main (f)) 部分中的表单只会在您直接module+ main时执行,而不是在a.rkt时执行。

有关详细信息,请参阅here