Get start with "Lisp"

Get start with "Lisp"

在《黑客与漫画》中,Paul graham提到什么才是最好的编程语言,Lisp和C被明显的提及,对可谓是Lisp是推崇备至。最近准备看SICP,于是学一下极具逼格的Lisp。

The basic, if primitive, way to get Lisp running is to install a command-line Lisp system. This works especially well if you have a UNIX system (OS X or Linux). Command-line Lisps include:

  • SBCL is a recent revision of CMUCL with new modifications and additions.I recommend SBCL as the best command-line Lisp. However, SBCL is very verbose and warning-filled
    though, which can get quite annoying. On the Mac, if you prefer a quieter, more forgiving, and decently fast Lisp, try CCL or MCL.
  • CLISP is a good Common Lisp, and is highly portable to nearly every environment out there. However, the reason it is portable is that it compiles to a bytecode interpreter rather
    than to machine code, and so it‘s pretty slow.
  • MCL is a freeware command-line-only version of Macintosh Common Lisp, which runs under MacOS X nicely. It is much faster than CLISP on the Mac, but its debugging facilities are
    primitive.
  • CCL, or Clozure CL, was a fork of MCL way back when but now is a high-performance Lisp implementation in its own right, and runs on a lot of different platforms. If you‘re getting annoyed
    at SBCL‘s verbosity, try CCL.
  • CMUCL is a first-rate Common Lisp, but it is not available on all platforms. CMUCL is the system from which SBCL sprang.
  • If you‘re interested in playing around with it, ABCL is a Common Lisp implementation which runs on the Java VM. Note that it‘s not particularly fast (yet).

这里推荐使用SBCL。其它的嘛,自己看吧。。。我下了两个,一个SBCL,一个CLISP。

linux下面,检测好自己预先装了SBCL,

[email protected]:~$ which sbcl
/usr/bin/sbcl

如果没有装

sudo apt-get install sbcl

第一个Lisp程序,你一定猜得到

在当前文件夹下编辑

vim ./hello.lisp

(princ "hello world!")

然后进入sbcl

[email protected]:~$ vim ./hello.lisp

[email protected]:~$ sbcl

This is SBCL 1.1.1.0.debian, an implementation of ANSI Common Lisp.

More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.

It is mostly in the public domain; some portions are provided under

BSD-style licenses.  See the CREDITS and COPYING files in the

distribution for more information.

* (load "hello.lisp")

hello world!

T

一切从这里开始,hello world。

一切在这里结束,EOF

Get start with "Lisp"

时间: 2024-10-14 13:07:28

Get start with "Lisp"的相关文章

ANSI Common Lisp Chapter 2

Chapter 2 总结 (Summary) Lisp 是一种交互式语言.如果你在顶层输入一个表达式, Lisp 会显示它的值. Lisp 程序由表达式组成.表达式可以是原子,或一个由操作符跟着零个或多个实参的列表.前序表示法代表操作符可以有任意数量的实参. Common Lisp 函数调用的求值规则: 依序对实参从左至右求值,接着把它们的值传入由操作符表示的函数. quote 操作符有自己的求值规则,它完封不动地返回实参. 除了一般的数据类型, Lisp 还有符号跟列表.由于 Lisp 程序是

Common LISP自带单步跟踪功能

Common LISP自带单步跟踪功能,执行 (step 要跟踪的命令)即可.以sdraw为例,跟踪其执行. [1]启动单步跟踪 SDRAW[60]> (step (sdraw '(a (b c d) c))) step 1 --> (SDRAW '(A (B C D) C))     显示下一个要执行的语句 Step 1 SDRAW[61]>                         等待用户输入调试指令 [2]输入help查看帮助,帮助的内容很多,前面一大段和Debug是一样的

Lisp简明教程

此教程是我花了一点时间和功夫整理出来的,希望能够帮到喜欢Lisp(Common Lisp)的朋友们.本人排版很烂还望多多海涵! <Lisp简明教程>PDF格式下载 <Lisp简明教程>ODT格式下载 具体的内容我已经编辑好了,想下载的朋友可以用上面的链接.本人水平有限,如有疏漏还望之处(要是有谁帮我排排版就好了)还望指出!资料虽然是我整理的,但都是网友的智慧,如果有人需要转载,请至少保留其中的“鸣谢”页(如果能有我就更好了:-)). Lisp简明教程 整理人:Chaobs 邮箱:[

搭建fedora开发环境 common lisp, c++, go

原帖http://www.linuxdown.net/install/soft/2016/0303/4903.html 安装vim sudo dnf -y update sudo dnf install vim-enhanced common lisp 原帖:http://www.programgo.com/article/17905013763/ 需要用到的软件: sbcl,比较流行的一种common lisp实现:emacs,用作开发环境,虽然比较复杂,但是比原来的命令行好用多了:slime

SBCL 从REPL 中提取lisp代码

1, 在emacs C-x C-W 文件另存为保存所有REPL过程 由于 (load "foo.lisp")时只有定义语句可以正确执行, 执行语句不可正确被 (load "foo.lisp")解析执行 所以脚本写成了这个样子, 脚本名 parse_lisp_code.sh #!/bin/bashif [ -n "$1" ]; then   sed 's/CL-USER>//' $1 | expand -t 8 | egrep '^ *\(d

我终于理解了LISP『代码即数据|数据即代码』的含义

以前我一直不能理解LISP里引用的作用,感觉引用和字符串没什么区别.比如:> (define (func) 'ok) > (func) 'ok 这里把引用ok当做了函数func的返回值. 但是我在实现函数式汉语编程的时候,我把代码构造成了一个多叉的语法树,这时候对某一段代码的引用,就是不对代码Eval,直接返回语法树的根节点.类似于: > '(car (a b)) '(car (a b))可是LISP中的引用实际上是一个construct,它可以被car.cdr.即:> (car

函数式编程语言LISP,python,haskell,clojure

说说我自己的背景吧,我是个半吊子的程序员,做任何事情喜欢比较了解然后再尝试,我接触过很多语言,大多数都把它当成工具来使用 我现在的工作大部分主要在于数据挖掘与机器学习方面,也学习web开发,我第一个拿来工作的语言是python,我是从那里得知函数式编程的概念的 说起lisp据说python就是模仿的lisp,而得知这个语言是从黑客与画家这本书中得知的,据说是一个特别值得尝试的语言,由于作者说如果年龄超过25岁,最好不要尝试学习它,我明年就本命年了,看来应该试着尝试一下了 在之前面临招工作的时候曾

Dandelion - Eclipse Lisp Plugin

Common Lisp没有一个比较简单易用的IDE,网上推荐使用的都是LispBox,但是基于Emacs编辑器,使得学习以及使用的门槛过高. Eclipse是一个非常强大的可任意扩展的开发环境,所以我们可以使用Eclipse 下的Lisp插件.两年前我就寻找过,但是没有找到合适的,至于我为什么不自己开发一个= =.(我好囧).最近又找了一下,发现了一个Dandelion的项目,最近更新时间是2013年8月,嗯,果然是在我找过之后才出的插件,感谢项目组啊. 好了,不说废话了,献上项目地址了:htt

Common Lisp学习资源整理

Lisp Hackers: Interviews with 100x More Productive Programmers Posted on June 26th, 2013 Lisp Hackers: Interviews with 100x More Productive Programmers, by Vsevolod Dyomkin, is available for free in multiple formats from Leanpub. Let Over Lambda Post

Common Lisp 学习笔记

特殊操作符.函数.宏 0.0 format CL-USER>(format t "hello world") ;t=>*standard-output* hello world NIL CL-USER>(format t "~a:~10t~a" "This is" "a shinny day") This is: a shinny day NIL ~a=>美化输出(如字符串去引号.关键字去前导冒号),消