使用chez方案执行当前的s表达式

时间:2013-12-17 01:26:36

标签: scheme chez-scheme

我想将当前的s-expression行传递给scheme解释器并执行它,我该怎么办?

我使用Chez Scheme Petite作为解释器,但是,如果我将文件传递给它,它只是设置环境,我只想将代码传递给它并运行代码并打印结果。

例如,我有这样的代码

(define fact    
  (lambda (n)    
    (cond ((= n 1) 1)    
      (else (* n (fact (- n 1)))))))    

(fact 5)

并将其另存为fact.ss;

如果我在cmd,petite fact.ss中运行它,我只能设置环境,我需要在“>”之后重新输入(事实5) ,然后得到结果打印。

1 个答案:

答案 0 :(得分:1)

正在执行它。但是,由于您对(fact 5)的返回值没有任何作用,因此它会被丢弃。

也许您应该尝试(display (fact 5))