错误-使用Repl online IDE时取消绑定符号模(方案)

错误-使用Repl online IDE时取消绑定符号模(方案),ide,scheme,repl.it,Ide,Scheme,Repl.it,一个家庭作业问题需要我计算两个数字的gcd。但是当在Repl.it(在线IDE)上运行时,在gcd函数中使用modulo关键字会产生上述错误 我看了其他的答案,但它们并不能完全解决这个问题。我尝试使用jdoodle.com(另一个在线IDE)运行该程序,它在那里工作得非常好。所以,我不知道为什么它对Repl不起作用 ;; My gcd function (define (gcd a b) (cond [ (= b 0) a ] [else

一个家庭作业问题需要我计算两个数字的gcd。但是当在Repl.it(在线IDE)上运行时,在gcd函数中使用modulo关键字会产生上述错误

我看了其他的答案,但它们并不能完全解决这个问题。我尝试使用jdoodle.com(另一个在线IDE)运行该程序,它在那里工作得非常好。所以,我不知道为什么它对Repl不起作用

;; My gcd function

(define (gcd a b)
  (cond 
    [
      (= b 0) a
    ]

    [else 
      (gcd b (modulo a b))
    ]
  )
)

我想知道为什么这对Repl IDE不起作用,以及是否有任何方法可以让它在那里工作,而不必简单地切换到另一个网站。

modulo
功能在Repl.it使用的BiwaScheme中没有实现。无论多么好的新功能是-
mod
功能是!因此,通过一些合理的重新格式化,这应该是可行的:

(define (gcd a b)
   (cond [(= b 0) a]
         [else (gcd b (mod a b))]))

我试过了
mod
确实适用于repl。谢谢。另外,关于我使用的奇怪格式,我对Scheme是新手,所以我只是对括号格外小心:)原因是BiwaScheme遵循R6RS,R6RS具有
mod
mod0
,而OP尝试了以前的标准R5RS中定义的
。其他编程语言也有不兼容的主要版本,例如Python2和Python3。