silc:C 语言中的简单 Lisp 实现

时间:2024-08-10 00:54:32
【文件属性】:

文件名称:silc:C 语言中的简单 Lisp 实现

文件大小:39KB

文件格式:ZIP

更新时间:2024-08-10 00:54:32

C

警告 这仍在进行中。 概述 受 lisp500 和 tinyscheme silc 的启发,是一个小型的 lisp 实现。 它只是为了好玩,主要是为了演示 lambda 演算解释。 它具有可移动的垃圾收集器,非常适合在受限环境中使用(所有分配都在有限的堆区域中进行)。 如何构建 在根目录中执行./configure && make repl 。 然后做: $ rlwrap src/repl/target/silc 示例会话日志: ;; SilcLisp by Alex Shabanov ? (+ 1) 1 ? (+) 0 ? (+ 1 2 (+ 4 5)) 12 ? nil nil ? true true ? (define foo (lambda (a b) (+ a b 1000))) # ? (foo 1 2) 1003 ? (quit) ;; Exiti


【文件预览】:
silc-master
----silc.mk(206B)
----test()
--------test_obj.c(3KB)
--------test_print.c(3KB)
--------test_eval.c(6KB)
--------test_gc.c(9KB)
--------test.h(1KB)
--------test_inl.c(4KB)
--------Makefile(2KB)
--------README.md(135B)
--------test_read.c(5KB)
--------test_helpers.h(1KB)
----TODO.md(146B)
----src()
--------silc()
--------demo()
--------repl()
----configure(1KB)
----.gitignore(42B)
----Makefile(296B)
----README.md(3KB)
----LICENSE.txt(580B)

网友评论