问题标签 [ccl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
155 浏览

linux - 尽管有 sudo 权限,但编译 Clozure CL 的权限错误

我通过 subversion 查看了 Clozure Common Lisp 1.10 以获取我的 raspian raspberry pi。当我尝试运行 armcl 时,出现“未找到 GLIBC_2.15”错误。我用apt-get安装了最新版本的m4,1.4.16-3。我按照 Clozure 的说明构建 lisp 内核, http: //ccl.clozure.com/install.html

这个权限错误是意外的,因为我在这台机器上有 sudo 权限。可能出了什么问题?

0 投票
1 回答
356 浏览

common-lisp - Clozure CL 中长时间运行的应用程序的应用程序交付

Application Delivery 的所有基本示例都展示了如何用您自己的函数替换顶层函数。一旦该功能完成,应用程序就会退出。我想知道为长时间运行的应用程序创建顶级函数的最佳方法是什么。我的代码是

有没有更好的办法?我不喜欢循环,但释放终端的东西也可以。

0 投票
2 回答
430 浏览

build - 无法在 OS X 10.10 Yosemite 上使用 Clozure CL 编译为本机可执行文件

我创建了一个简单的 hello world (hello.lisp) ,代码:

, 用于测试 CCL 的本机可执行编译的程序。我继续从 CCL GUI 编译和加载缓冲区(使用 Clozure Common Lisp 版本 1.10-store-r16266 (DarwinX8664))。

当我测试它时:

它找到了主要功能。当我继续用: 编译它时 (save-application "/tmp/h" :toplevel-function #'main :prepend-kernel t),它继续操作并且 CCL 退出。

该文件已创建,约为 56MB。当我尝试运行它时,虽然我得到以下输出:

错误:没有适用于通用函数的方法:# 使用参数调用时:(# :NOTE-CURRENT-PACKAGE #) 执行时:#,在进程 toplevel(6) 中。错误:通用函数没有适用的方法:# 使用参数调用时:(# :BREAK-OPTIONS-STRING T) 执行时:#,在进程 toplevel(6) 中。错误:通用函数没有适用的方法:# 使用参数调用时:(# :BREAK-OPTIONS-STRING T) 执行时:#,在进程 toplevel(6) 中。错误:泛型函数没有适用的方法:# 使用参数调用时:

并且错误继续。我做错了什么?它是一个错误吗?

谢谢

0 投票
1 回答
1381 浏览

emacs - Common Lisp:如何让(包内...)在 Emacs Slime 中工作

64 位 Windows 7
Clozure Common Lisp 版本 1.9 WindowsX8632
Emacs 24.3.1
Slime 更新日志日期 2014-06-17

我有一个示例 .lisp 文件,其开头如下:

程序的其余部分显示一个对话框。当我从命令行运行它时,wx86cl -load helloqt.lisp它似乎工作正常。当我从 Emacs Slime ( C-x C-k) 运行它时,它说没有包“QT”。C-x C-e但是,如果我首先单独评估第一行(

如何制作它,以便我可以从 emacs 编译/运行文件,而不必先手动评估第一行?

另外,为什么不在(in-package ...)Slime 会话中更改当前包?如果我想与包内容交互,我必须手动更改它。

0 投票
1 回答
1209 浏览

python - 如何将 Lisp 程序的输出转换为 Python?

我有一个非常大的 Lisp 项目,我想以编程方式将其输出传递给 Python 程序,即使用 Python 在某些输入上调用 Lisp 程序并将输出返回到 Python。

该项目仅在 Clozure Common Lisp (ccl64) 中编译,我确实尝试找到一种方法将其转换为可执行文件(我使用的是 Mac OS X),但这遇到了很多死胡同(我不是 Lisp程序员)。

Clozure Common Lisp 的文档应该提供上述解决方案,但我无法理解它。我制作的示例创建了一个文件,但终端不会将它们作为可执行文件运行。

如何为 ccl64 创建可执行文件

我试图按照这个问题的答案将 Common Lisp 编译为可执行文件,除了使用 ccl64 的保存应用程序功能。

我正在尝试使用 Python 的子进程来调用 ccl64,运行 Lisp 程序并获取输出。但是,子进程由于某种原因拒绝运行 ccl64 命令。这是我到目前为止写的:

该变量out应包含从 ccl64 获取使用/帮助的输出。相反,我得到一个错误:

如何让 Python 调用 ccl64 并从 Lisp 项目中获取输出?

0 投票
1 回答
142 浏览

lisp - Retrieving (load)ed source code from CCL?

I called (load "code.lisp") with CCL, then accidentally deleted code.lisp. Is there any way for me to retrieve the source code? Does CCL have it in memory anywhere?

0 投票
1 回答
392 浏览

lisp - Lisp 加载错误:调度宏中的未定义字符

我决定我的生日是尝试解决我的 Lisp 问题的好时机。

我从某人那里收到了一个 Lisp 程序来运行一个实验。它在他的 OS X 环境中运行良好。但是,我无法让它在 Windows 7 或 Ubuntu 上运行。该程序使用 Act-R 6.2 运行模型。当我尝试加载 .lisp 文件时,我收到以下错误:

Windows 7 和 Ubuntu 的错误完全相同。如果需要,这是控制台输出:

http://i.stack.imgur.com/dFXVm.png

似乎 load-turing-application.lisp 加载了多个其他文件,其中一个是 turing-application-v1.lisp,其中的行(setf *smile* (#/initWithContentsOfFile: (#/alloc ns:ns-image)(ccl::%make-nsstring "smiley.jpg"))) 似乎是罪魁祸首。我怀疑它与 #/-notation 有关。

任何想法,将不胜感激。

0 投票
1 回答
120 浏览

common-lisp - 获取带有损坏的符号链接的目录中的目录条目列表

我在 OS X Yosemite 上使用 CCL。

当我使用例如

在目录中

用于列出所有目录条目,但/Users/Tom包含损坏的符号链接(例如slime,链接到的目录不再存在),

被抛出。

有没有办法在符号链接损坏的目录中获取目录条目列表?

0 投票
1 回答
294 浏览

sockets - 通用 Lisp 套接字

具体使用 ccl,我试图在同一个程序中设置两个套接字作为 fifo 数据结构。

为此,我一直在站着测试代码来锻炼我对 api 的理解,现在我遇到了一个我无法弄清楚的问题。下面的代码snipped设置了两个socket,一个listen,一个连接listen,并在listen socket上接受连接(accept调用在返回之前等待一个连接进来,这就是我在这种情况下想要的) ,之后我们写入一个套接字并从另一个套接字读取。代码挂起,我不知道为什么(我认为是因为套接字没有连接)。

编码:

0 投票
0 回答
468 浏览

common-lisp - 通过 Clozure CL 与 Windows API 交互

我想通过 Clozure CL 的外部函数接口调用 Windows API 函数,但我遇到了一些问题,因为我能够找到的文档相当稀缺。

作为一个足够丰富的例子,我试图调用SHGetKnownFolderPath。它的签名是

获取入口点

我可以使用以下内容来获取函数的入口点:

获取/设置正确的方法签名

这是我认为调用它的一般步骤,但我不确定每个步骤如何:

  • 检索 CCL 为该函数生成的签名,以便我知道如何调用它。
  • 使用external-call.
  • 定义一个 FFI 结构或类来保存GUID(第一个参数)viadef-foreign-type或相关构造。
  • 调用后,使用CoTaskMemFree释放 指向的内存*ppszPath

猜测最终代码的形式

我对最终代码的一般形式的猜测是

在 C/FFI 和 Lisp 之间仍有各种未知函数和函数调用进行转换。

附录

我对 Windows API 非常熟悉,并且已经完成了其他语言的 Win32 API 调用。我还设法让这个在 CLisp 中工作,在某种程度上,因为我遇到了 Windows 中 CLisp 的 Unicode 支持不佳的问题(我最终只得到了路径的第一个字符,因为 CLisp 读取 UTF-16 字符串作为ASCII)。

我坚持的一点是 CCL 中有什么功能可以完成这项工作。任何在正确方向上的帮助将不胜感激。