Ruby ScmRb 2 : Scheme Interpreter In Ruby

skandhas · 2013年04月18日 · 2736 次阅读

ScmRb 2 是这篇帖子的续集,之所以有续集,是因为 Lispy 的 作者,也给 Lispy 也做了续集 :Lispy 2

ScmRb 2 是 Lispy 2 的 Ruby 实现,代码结构与 Lispy 2 保持一致。也因与此,ScmRb2 代码中少了一些 Ruby-Style,还请多包涵。

说明:

  1. ScmRb 和 Lispy 一样,都不是一个完全的 Scheme 解释器。
  2. ScmRb 并没有实现 Lispy 中的 open-input-file, close-input-port, ... 等 procedure,做为一个 Demo 程序来说觉得没必要。

代码在 GitHub .

ruby scmrb.rb
ScmRb version 2.0
scmrb> (define (times x) (lambda (y) (* x y)))
scmrb> ((times 2) 3)
6
scmrb>
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请 注册新账号