閱讀227 返回首頁    go iPhone_iPad_Mac_apple


Scheme interpreter in clojure

   昨天晚上用clojure搞了個scheme解釋器,基本上是sicp裏的解釋器的clojure翻譯版本,可能唯一值的一提的是對transient集合的使用,實現副作用的set!。總共代碼包含注釋才366行,支持的feature包括

Feature Supported Comment
define yes
lambda yes
variable lookup yes
primitive procedure evaluation yes
compound procedure evaluation yes no tail recursion yet
if yes
cond yes
let yes

let* yes
no named let* yet
letrec no
begin yes

set! yes

quote yes
quasiquote no
unquote no
delay no
define-syntax no

       支持的primitive procedure包括常見的四則運算、car/cdr、list以及display、newline等。代碼放在了github上:https://github.com/killme2008/cscheme,有興趣的可以玩玩吧。
文章轉自莊周夢蝶  ,原文發布時間2011-01-24

最後更新:2017-05-18 18:04:48

  上一篇:go  xmemcached發布1.3.2版本
  下一篇:go  A 77 lines echo server in clojure