Racket 如何让球拍不打印?

Racket 如何让球拍不打印?,racket,Racket,我正在用Racket编写一个程序,我正在用racketfoo.rkt运行这个程序。这是可行的,除了打印程序顶层的每个表达式的结果,即使没有调用打印函数。这就好像程序是逐行输入到REPL的,但在本例中,我根本不尝试使用REPL,我只是尝试从命令行运行程序 如何使Racket不打印内容?#lang Racket,Racket实现中的默认语言,打印顶级语句,除了返回REPL总是忽略的值的(void),以及返回零值的(values),因此REPL无需打印。这意味着您可以创建一个以其中任何一个结尾的mai

我正在用Racket编写一个程序,我正在用
racketfoo.rkt
运行这个程序。这是可行的,除了打印程序顶层的每个表达式的结果,即使没有调用打印函数。这就好像程序是逐行输入到REPL的,但在本例中,我根本不尝试使用REPL,我只是尝试从命令行运行程序

如何使Racket不打印内容?

#lang Racket
,Racket实现中的默认语言,打印顶级语句,除了返回REPL总是忽略的值的
(void)
,以及返回零值的
(values)
,因此REPL无需打印。这意味着您可以创建一个以其中任何一个结尾的
main
函数,并且该函数将没有来自REPL的输出

statement-1
statement-2
statement-3
并将此更改为:

(define (main)
  statement-1
  statement-2
  statement-3
  (void)) ; or (values)
这样的表单定义
设置
返回与
(void)
相同的值,用于完全相同的目的

并非racket支持的所有语言都打印顶级语句。实际的方案语言
#!r6rs不打印顶级语句