clisp

    0热度

    1回答

    我(仍然)将代码从Franz Lisp移植到Common LISP。现在我似乎已经把翻译推到了一个奇怪的角落,在那里它爆炸了。 [11]> (setq fff (cadr contextstack)) *** - Program stack overflow. RESET 现在怎么能导致堆栈溢出?递归在哪里? 我可以采取的长度确定: [12]> (length contextstack)

    1热度

    2回答

    我想理解为什么我会得到这个错误,因为我是相当新的lisp。我想创建一个函数,该函数从用户处获取数字n,并根据该数字创建最多五个数字的列表。该功能然后将列表中的第一个数字发送到列表的末尾。 例 > (my_func 1) > (2 3 4 5 1) 这是我到目前为止,我能够得到函数返回一个列表,但是我如何的第一要素发送不确定到列表的后面。 (defun my_rotate (y) (lab

    2热度

    1回答

    我写一个Lisp函数,来决定是否一个词是不使用“反向”功能的回文。我对lisp很陌生,我仍然试图去理解这个概念。每次我测试回文时函数返回NIL,有什么想法为什么? 我的功能我想出了。 (defun palindromep (list) (cond ((null list)t) (t (and (equal (first list) (first (r

    2热度

    2回答

    我正在写一个名为flatten的函数,该函数应该采用嵌入列表并返回其简化版本的列表。当我尝试执行我的函数时,我收到一个错误,指出“带点的Lambda列表只允许在宏中使用,不在这里:列表”关于如何解决此问题的任何建议? 这是目前我所拥有的。 (defun flatten list (cond (null list)'() (list (first list))

    -1热度

    1回答

    我需要一些帮助来重新编写普通lisp中的这个函数,而不需要使用SET,SETF或SETQ(我也不能使用循环),我希望有人能够帮助我。 这里是代码: (defun apply-values (DictValues Monomial) (let ((Coeff (monomial-coefficient Monomial)) (Vars (varpowers Monomial)

    1热度

    1回答

    我写了一个函数my_rotate,它从用户处获取一个数字,并创建一个最多包含五个数字的列表。 my_rotate然后,弹出列表的第一个元素并将其添加到列表的末尾。有关如何编写my_rotate以获取其他号码n的任何建议,并根据用户输入的号码n来轮换列表。 例子: > (my_rotate 1 2) 输出: (3 4 5 1 2) 这是我到目前为止有: (defun my_rotate (y)

    -1热度

    1回答

    所以我有这个简单的表达来评价,并列出一元二次方程的两个根: (defun QUADRATIC (A B C) (list (/ (+ (- B) (sqrt(- (* B B) - (* 4 A C)))) (* 2 A)) (/ (- (- B) (sqrt(- (* B B) - (* 4 A C)))) (* 2 A)))) 但是,当我用任意三个评估它在CLISP号码参数,说 (quad

    3热度

    2回答

    我想了解更多关于lisp宏的信息,我想创建一个简单的defun宏实现。 我也对所有实现中的lisp源代码感兴趣。

    0热度

    1回答

    我正在使用GNU Clisp来计算一个表示为散列表散列表的非常大的矩阵。存储的最终哈希值是单个浮点数。 程序似乎一段时间后耗尽内存,我想我需要 变化的变量类型莫名其妙的终极价值,以便使用较少的内存 有操作系统分配更多内存 以某种方式使用硬盘中的虚拟内存;或者它们的一些组合。 有什么建议?我做了很多搜索,找不到任何东西。

    1热度

    1回答

    我在使用clisp在终端内加载我的源文件时遇到问题。 如果我执行下面的命令来加载文件: (load #p "filename.lisp") 它给了我下面的错误: SYSTEM::LINE-COMMENT-READER: Invalid byte sequence #xE0 #xA0 #x20 in CHARSET:UTF-8 conversion 有人可以告诉我什么,我需要以加载文件?