各种ANSI CL实现有何不同? [英] How do the various ANSI CL implementations differ?
问题描述
正如我在书中所讲的那样,当我开始从《实践通用Lisp》中学习CL时,我开始使用Allegro CL编译器.我停止使用它了,因为它的商业性却又给我留下了深刻的印象.它需要连接到其远程服务器以获取一些许可资料.
When I started learning CL from Practical Common Lisp, as is preached in the book, I started off with Allegro CL compiler. I stopped using it, since its commerical, yet free bit didn't impress me. It needed a connection to its remote server for some licensing stuffs.
我切换到剪辑"并正在使用它.现在,我已经听说过SBCL,并计划也开始使用它.
I switched to 'clisp' and am using it. Now, I have been hearing about SBCL and planning to start using it as well.
因此,问题是:各种ANSI CL实现有何不同?有实际使用经验的经验吗?
So, the question is: How do the various ANSI CL implementations differ? Any practical experience of using one over the other ?
谢谢.
推荐答案
ANSI CL的某些部分将某些细节留待实现确定;您会发现,对于标准的那些部分,每个实现都有其自己的怪癖.
There are portions of ANSI CL that leave certain details up to the implementations to determine; you will find that for those parts of the standard, each implementation will have its own quirks.
此外,还要寻找对运行时很重要但不是用语言定义的事物:诸如线程,多处理和垃圾回收之类的事物在性能和可靠性上将有很大差异.
Also, look for things that are important to the runtime but not defined in the language: things like threading and multiprocessing and garbage collection will vary substantially in performance and reliability.
我发现SBCL是在Linux中使用的最简单的实现.它对Linux中的线程有很好的支持.关于垃圾收集器,我不能说太多,因为它对我来说没有多大关系.
I have found SBCL to be the easiest implementation to work with in Linux; it has good support for threading in Linux. I can't say much about the garbage collector, because it hasn't mattered to me much yet.
在Windows上,最好的选择可能是Allegro或LispWorks,尽管我在Windows上取得了一些成功. SBCL的Windows端口正在开发中,但是我并没有使用太多,所以我不能发表评论.
On Windows, your best bet will probably be Allegro or LispWorks, although I've had some success with clisp on Windows. The Windows port of SBCL is progressing, but I haven't used it much, so I can't really comment.
通常来说,对难以通过研究或分析获得的这类事物的理解;它来自经验.只需选择一个自己喜欢的不错的实现,然后开始工作即可.您会在旅途中找到棘手的东西.
Generally speaking, an understanding of these kinds of things that are difficult to acquire through research or analysis; it comes through experience. Just pick a decent implementation that you're comfortable with, and get to work. You'll figure out the tricky stuff as you go.
这篇关于各种ANSI CL实现有何不同?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!