makelisp 是 GNU make 的 Lisp 实现。
makelisp.mk 是 GNU make 中的 Lisp 解析器。
GNU make 包含两个内置函数:$(shell) 和 $(guile)。
$ make -f makelisp.mk LISP_PROGRAM='(car (quote (a b c)))' a $ make -f makelisp.mk LISP_PROGRAM='(cdr (quote (a b c)))' (b c) $ make -f makelisp.mk LISP_PROGRAM='(cons 1 (cons 2 (cons 3 ())))' (1 2 3) $ make -f makelisp.mk (defun fact (n) (if (eq n 0) 1 (* n (fact (- n 1))))) (fact 10) (defun fib (n) (if (eq n 1) 1 (if (eq n 0) 1 (+ (fib (- n 1)) (fib (- n 2)))))) (fib 12) (defun gen (n) ((lambda (x y) y) (define G n) (lambda (m) (define G (+ G m)) G))) (define x (gen 100)) (x 10) (x 90) (x 300) ^D fact 3628800 fib 233 gen x 110 200 500
car
cdr
cons
eq
atom
+, -, *, /, mod
neg?
quote
if
lambda
defun
define
FizzBuzz:
$ cat fizzbuzz.l | make -f makelisp.mk (lambda (n) (if (eq n 101) nil (if (print (if (eq (mod n 15) 0) FizzBuzz (if (eq (mod n 5) 0) Buzz (if (eq (mod n 3) 0) Fizz n)))) (fizzbuzz (+ n 1)) nil))) PRINT: 1 PRINT: 2 PRINT: Fizz ... PRINT: 98 PRINT: Fizz PRINT: Buzz nil
Sort:
$ (cat sort.l && echo '(sort (quote (4 2 99 12 -4 -7)))') | make -f makelisp.mk ... (1 2 3 4 5 6 7) (-7 -4 2 4 12 99)
本书适用于那些想更上一层楼的 Lisp 程序员。书中假设读者已经初步了解 Lisp, 但不要求有丰富的编程经验。最初几章里会重温很多基础知识。我希望这些章节也会让有经验的Lisp 程序员感兴趣, 因为它们以崭新的视角展示了熟知的主题。 通常很难一语道清一门编程语言的精髓, 但 John Foderato 的话已经很贴切了: Lisp 是一门可编程的编程语言。 (Lisp is a programm
Quickproject 是一个用于创建 Common Lisp 工程框架的库。创建项目后,它扩展了 ASDF 注册表,以便可以立即加载项目。 示例 * (quickproject:make-project #p"~/src/myproject/" :depends-on '(drakma cxml))"myproject"* (asdf:load-system "myproject")load
Little Lisp 是一个用 JavaScript 编写的小型 Lisp 解释器。
Bud是一个使用Java实现的类Scheme的Lisp方言解释器,简单、轻量,能够十分方便地嵌入Java程序中使用。 Bud实现了R5RS中大多数的特殊形式(Special Form)以及内置函数,其中包含:quote、lambda、if、cond、and、or、car、cdr、eq?以及类型判断和算数函数。 使用Bud需要Java 7及以上版本,编译需要Maven 3.0.4以上。 特性: 一等
Emacs Lisp,一种直译式的脚本语言,为LISP的方言之一,GNU Emacs与XEmacs文字编辑器都使用这个编程语言来扩展他们的功能。它的直译器是以C语言来实作的。它受到Maclisp的影响很大,但是跟Common Lisp与Scheme有所不同。
Lisp是仅次于Fortran的第二古老的高级编程语言,并且从早期开始就发生了很大变化,并且在其历史上存在许多方言。 今天,最广为人知的通用Lisp方言是Common Lisp和Scheme。 Lisp是John McCarthy于1958年在麻省理工学院(MIT)工作时发明的。 在学习LISP编程语言时,此参考将引导您通过简单实用的方法。
Common Lisp Koans(lisp-koans)是一个语言学习练习程序,类似 ruby koans,python koans 等等。Common Lisp Koans 主要是帮助学习一些 lisp 规范特性和改进,可以学习到大量的 Common Lisp 语言特性。 终端,在文件 'contemplate.lsp' 执行 lisp 解析器: sbcl --script contempla
Lisp Web Toolkit 是使用 Common Lisp 开发的,面向对象的开源 Web 框架,支持 URI、HTML、CSS、JSON、HTTP、WebSocket 等功能。