本文目录
- Common Lisp支持多线程吗
- 能推荐下比较经典的common lisp 代码么
- 相比Scheme 与 Common Lisp,Clojure 有哪些坑
- 如何查看common lisp函数的文档
- common lisp应用领域、入门前应具备哪些方面的知识
- common lisp用什么开发工具,编译器是什么
- common lisp和 elisp和 schema哪个好
Common Lisp支持多线程吗
支持。
但是多线程de的实现在不同的Common Lisp实现中有各自的库。我目前的程序中,用的是 SBCL。
SBCL的扩展库 sb-thread 支持多线程(Linux , Mac 下, windows下没试过)。
能推荐下比较经典的common lisp 代码么
CL本身就是一门通用语言,如果英文够好的话可以看看
LISP
outside
the
box
Common
LISP
Cookbook
Lisp
for
the
web
Lisp
web
tales
这些书,网上有免费章节可以读
再看看别人怎么说的。
相比Scheme 与 Common Lisp,Clojure 有哪些坑
举一些对新手不是很适应的地方,未必是坑:
各种铺面而来的语法糖让人略不知所措(如果像我一样之前只跟着SICP写写scheme),可以在标识符前后加好多符号啊,有尖号^ 井号尖号#^ 波浪线~ 波浪线艾特~@ 后缀井号# ......好甜好甜
Clojure由于jvm-based的原因,正常写出来的尾递归是不会被优化的,只能用recur
对于从只弄Java转过来的,那种(.method Object & args)语法会很蛋疼,因为觉得世界都颠倒过来了,不过当用惯了-》和-》》后,会觉得世界稍稍正常一点,调用链还在嘛
没有传统的car cdr
nil就是空,nil或false在if中都是假值,其他都是真
小心binding,有些是sequentially求值的,有些不是;在使用laze-seq的时候,要注意bindings的作用域,不要引入外层的binding
2013.12.16 Update, 一个小地方:contains? 是个名不副实的家伙,不要被欺骗了,比如 (contains? ’(100 101 102) 101) 的结果是 false。这个函数原型说明是(contains? coll key),即检查(coll key)返回是nil/false,还是其他值。想找include意义的函数,请用some.
-多线程
如何查看common lisp函数的文档
Common Lisp有几百个函数,不可能把所有的函数用法都记得很清楚,所以就希望在编写程序时可以随时的查看函数的文档描述。
首先,我找到documentation函数,其用法是:
[plain] view plaincopy
(documentation ’symbol ’type)
-is
common lisp应用领域、入门前应具备哪些方面的知识
一楼二楼,已经说的差不多啦,我来补充一下,人工智能这方面的:
(1)lisp确实强大到让其他语言的程序员嫉妒但又不承认的程度
(2)lisp有好多方言,初学用Common Lisp,再深一点可以考虑SBCL,至于AutoLisp只是针对于CAD作图方面的
(3)为什么国内人很少用CommonLisp ,在百度上一搜lisp出来的全是AutoLisp呢?原因很简单,中国程序员一般从事很低级的编程工作(有的人以自己在华为工作而自豪,但就算是华为,做的也都是很垃圾很低级的工作),所以一般用不到lisp。
(4)现在人工智能普遍用两种语言:
a.----Lisp
b.----prolog
前者是美国人工智能程序员惯用的语言,后者是欧洲,和日本人工智能程序员惯用的语言,但现在的趋势是,人工智能程序员,同时掌握这两种语言
(5)有很多人认为C,Cpp,......这种语言为通用语言,而像是lisp prolog这种语言为专属某个领域而用的,但他们都是小鸟,事实是这样的,C,Cpp ....这才是专用语言,当初设计的时候就是这么定位的
(6)Common Lisp值得一学,但中文资料确实少,我这有三本书pdf的,英文的,你如果想要,可以说一声,我发给你
(7)搞lisp就别用百度啦,基本没人能回答你提的关于lisp的问题,用 “ Stack Overflow ”吧,它绝对能满足你....................
------------------------------------------------------------------------------------------------
还有“practice common lisp”,个人人为不太适合入门,原文的语言太晦涩,中文翻译的更烂
推荐“Paradigms of artificial intelligence programming”case studies in common lisp, 这本书前半程讲的都是common lisp 很细,而且作者的语言很流畅不晦涩,解释的很细致..........
-多线程
common lisp用什么开发工具,编译器是什么
Corman Lisp是Windows操作系统下的Common Lisp开发环境,Corman Lisp包含了一套Intel处理器下的Common Lisp原生代码编译器、80x86汇编和反汇编工具以及多窗口的文本编辑器。Corman Lisp支持运行在Windows系列操作系统上,如Windows XP、Windows 2000等。Corman Lisp全面支持Win32 API、全部的Windows API函数等。关于Corman Lisp的特性,可查看官网介绍。
目前,Corman Lisp最新版本已经开源,分发协议为MIT。
-is
common lisp和 elisp和 schema哪个好
必须scheme, 没有疑问.(一般都看见问commonlisp和scheme哪个好.....没见过跟elisp这种垃圾比的)
elisp跟scheme没有可比性.....
elisp是古老的一堆问题的老lisp
scheme虽然也好几十年了但是一直在更新发展而且设计本身比elisp要出色很多.
elisp只是一个局限在一个编辑器里的脚本, scheme却有一个无限的空间在外面等你.
-多线程