60得票16回答
Lisp Web框架?

有哪些流行的(当然,“流行”是相对的)适用于不同LISP“口味”的Web框架?

60得票6回答
Lisp/Scheme中的符号是什么?

我至今仍然不明白符号“iamasymbol”的目的。我理解数字、布尔值、字符串、变量,但符号对于我这种习惯于命令式思维的人来说有点难以理解。究竟该如何使用它们?在程序中应该如何使用它们?我对这个概念的理解非常有限。

60得票8回答
使用宏的优秀应用程序和程序集合

我对宏非常感兴趣,刚开始了解其真正的威力。请帮我收集一些宏系统的优秀用法。 目前我有以下结构: 模式匹配: Andrew Wright和Bruce Duba。 Scheme的模式匹配,1995年 类似Prolog风格的关系: Dorai Sitaram。 Schelog编程。h...

59得票6回答
Lisp可执行文件

我刚开始学习Lisp,但不知道如何将代码编译和链接为可执行文件。 我正在使用clisp,clisp -c命令会生成两个文件: .fas .lib 接下来该怎么做才能得到一个可执行文件呢?

59得票4回答
Lisp中的setq和defvar是什么?

我看到Practical Common Lisp使用(defvar *db* nil)来设置全局变量。使用setq达到同样的目的不可以吗? 使用defvar与setq相比,有什么优缺点呢?

58得票10回答
如何在Emacs Lisp动态作用域下编程?

我之前学习过Clojure并且非常喜欢这门语言。我也很喜欢Emacs,并用Emacs Lisp编写了一些简单的东西。然而,有一件事情会让我在使用Elisp时产生心理障碍,那就是动态作用域的概念。它对我来说太陌生了,感觉像是半全局变量。 因此,在变量声明方面,我不知道哪些操作是安全的,哪些是危...

55得票9回答
ECMAScript是否真的是Lisp的一个方言?

我的一个朋友引起了我的注意,他提到了第四届欧洲Lisp研讨会的欢迎消息: ... 实现和应用 Lisp方言中的任何一种,包括 Common Lisp、Scheme、Emacs Lisp、 AutoLisp、ISLISP、Dylan、Clojure、ACL2、ECMAScript...

54得票12回答
如何实现continuations?

我正在开发一个用C语言编写的Scheme解析器。目前,它使用C运行时栈作为自己的栈,这在实现continuations时会出现一些小问题。我目前的解决方案是手动将C堆栈复制到堆上,然后在需要时再将其复制回来。除了不符合标准C之外,这个解决方案也远非理想。 在C语言中,如何最简单地实现Sche...

54得票15回答
函数式编程的入门读物有哪些推荐?

我喜欢学习超出我的舒适领域的语言,但在函数式语言方面找到一个起点很困难。我听说过《计算机程序的构造和解释》,但几年前我试着阅读它时感觉有些吃力。我更擅长于通过书籍学习,但当我去当地书店时,LISP的书看起来有点可怕。 那么,有什么好的起点吗?我的目标是能够使用函数式编程语言在6个月左右内解决...

53得票3回答
Clojure关键字参数

在Common Lisp中,您可以这样做:(defun foo (bar &key baz quux) (list bar baz quux)) (foo 1 :quux 3 :baz 2) ; => (1 2 3) Clojure没有关键字参数。其中一种替代方案是:(de...