在线运行 Lisp
在浏览器中编写、编译并运行 Lisp 代码,适合学习、练习与快速验证。
Lisp 代码编辑器
输出
标准输出(stdout)
标准错误(stderr)
执行信息
退出码:
运行状态:
使用说明
- 在左侧编辑器编写 Lisp 代码(例如使用
(format t ...)输出)。 - 点击“运行代码”即可在线编译/执行程序。
- 右侧面板展示输出与错误信息。
- 绿色区域为标准输出(例如
format/print)。 - 红色区域为编译/运行错误与警告。
- 执行信息包含退出码与运行状态。
- 快捷键:
Ctrl+Enter(Mac 上为Cmd+Enter)。
Lisp 基础
Hello World:
(format t "Hello, Lisp!~%")
常用类型:
- 数字:
13.14 - 字符串:
"hi",符号:'x - 列表:
(list 1 2 3),表:'((a . 1) (b . 2))
函数与递归
示例:
(defun fact (n)
(if (<= n 1) 1 (* n (fact (- n 1)))))
列表处理
map/filter/reduce:
(let ((xs '(1 2 3 4)))
(print (mapcar (lambda (x) (* 2 x)) xs))
(print (remove-if-not #'oddp xs))
(print (reduce #'+ xs)))
示例程序(点击上方运行)
1. 递归计算阶乘
(defun fact (n) (if (<= n 1) 1 (* n (fact (- n 1)))))
(format t "5! = ~a~%" (fact 5))
(format t "5! = ~a~%" (fact 5))
2. 列表最大值
(defun my-max (xs)
(reduce #'max xs))
(format t "Maximum: ~a~%" (my-max '(3 7 1 9 4)))
(format t "Maximum: ~a~%" (my-max '(3 7 1 9 4)))