DrRacket和终端上的球拍互动

时间:2016-02-05 12:34:50

标签: racket raco

这个程序在DrRacket中运行良好:

(define (display-state input data)
  input)

(define (update-state input data) 
  data  )

(define (main input data)  
    (displayln (display-state input data))
    (main (read-line (current-input-port) 'any) (update-state input data)))

(main "" data)

它是程序的骨架,它从终端交互中不断读取,并根据用户的输入和数据状态执行某些操作。

但是,在终端上,使用

raco exe prog.rkt

在第一次输入后终止。谁知道为什么?它是读取线或当前输入端口的错误/特征吗?

1 个答案:

答案 0 :(得分:1)

行。我明白我做错了什么。 (愚蠢,但我会留下这个以防其他人有同样的问题)

我希望raco exe能够运行该程序。但实际上它只是将其编译成可执行文件。

所以当我在窗口输入等待编译终止时,我只是输入我认为是输入的内容。

实际上我需要用

进行编译
raco exe prog.rkt

然后用

运行
./prog

卫生署!