问题标签 [quicklisp]
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.
emacs - 如何使用 quicklisp 加载外部依赖项?
这是我的代码:
每次我评估require
指令时,我都会收到以下错误:
当然,我在我的 REPL 中安装了带有 quickload 的包:
实际上我昨天晚上已经安装了它,我所有的代码都在毫无怨言地进行评估。今天我重新启动了 Emacs 和 Slime。我得到这个错误。是否有额外的配置要做?
这是我的加载路径中的内容:
我应该手动添加每个新包的路径吗?quicklisp 初始化不应该自己执行吗?
common-lisp - 如何结合使用 buildapp 和 quicklisp
我想使用 buildapp 来制作 curl-lisp 可执行文件,例如:
这绝对行不通,因为我没有路径“~/src/clbuild/systems/”,因为我使用 quicklisp 我的系统应该在“~/quicklisp/dists/quicklisp/software”,但是当我执行时:
这个问题的答案已经暗示 quicklisp 能够以 buildapp 能够检索它的方式导出其系统,但遗憾的是没有详细说明。
我还尝试不使用--asdf-path
,因为 SBCL(启动时)已经能够使用(require 'drakma)
or加载 Drakma (asdf:load-system "drakma")
。也使用--require
而不是--load-system
不会做交易。
因此:我如何将 buildapp 与 quicklisp 结合使用来制作具有所需系统的可执行文件(我只是关心 MISSING-COMPONENT PART)
emacs - 在 ALLEGRO-CL 免费版中安装 quicklisp 库
在 Ubuntu Raring 上的 Emacs 中。我在 Emacs 中加载了 SBCL,因为我一直在使用它。在键入 M-- Mx slime 以加载 ACL 后,我键入 (ql:quickload "ieee-floats") 以在 emacs 中新安装的 ACL 上加载我的第一个库并收到此错误:
我的 ACL asdf: central-registry的前几行是:
所以 acl 只是查看第一个文件并停止。同样在 ACL 中的 asdf: central-registry中,它列出了根目录中的所有文件以及文件夹,但在 SBCL 中,它只列出了 quicklisp/dist/software 中的所有根文件夹,而 SBCL 用于安装 quicklisp 库 i/e
ACL 列出所有根文件夹文件
SBCL'S - 仅列出根文件夹
并且 sbcl 和 acl 初始化文件包含相同的内容:
dependencies - 如何管理常见的 lisp 依赖项?
pip 需求文件、ruby gemfile、node package.json 等的 lisp 等价物是什么?如果这些是正确使用的东西,我不完全确定 asdf 和 quicklisp 之间的关系。
common-lisp - 在 eval-when 中快速加载
这是一个奇怪的情况。我有这个代码:
我相信在设置变量cffi-grovel
之前必须加载包。cffi-grovel::*cc*
当这个表单从 SLIME 执行时它可以工作,但是当它直接由 SBCL 加载时它不起作用,这是输出:
为什么第一次失败?
PS。我也尝试过#.cffi-grovel::*cc*
- 结果相同。
lisp - 了解包加载
(已解决,见评论)
最近我一直在研究一个必须与现有服务交互的 API。一切似乎都运行良好,我的项目刚刚开始变得足够大,以至于我会看到将东西放入包中会带来一些好处。由于这是我在 CL 中的第一个“真实”项目,我想我并没有完全理解这里发生的打包/加载机制。
我的基本问题是我有一堆代码使用宏来生成函数/类,将它们实习到我的包中,然后导出人们最终将用于与 API 交互的某些函数/访问器。如果我像这样单独加载文件:
一切正常。我的宏声明的函数被正确地嵌入和导出,我可以调用它们来与 API 交互。但是,如果我尝试执行以下操作:
Quicklisp 告诉我所有内容都已正确加载 - 似乎大部分加载过程都按我的预期进行,因为我的所有依赖项都已加载并可供使用。问题是与我的包裹相关的所有内容都不可用。这包括直接从我的 package.lisp 文件中导出的函数。作为参考,这里是我的 .asd 和包文件:
包.lisp
btc.asd
我觉得我在这里遗漏了一些相当明显的东西——我一直在研究eval-when
其他相关的加载功能,但一直没能弄清楚。有人可以向我解释这里发生了什么吗?
谢谢你的帮助。
编辑:这是我的 REPL 的样子:
以及生成函数的代码:
quicklisp - 加载 quicklisp.lisp 时出错
我按如下方式运行 sbcl:* (加载“quicklisp.lisp”)
它没有显示: “quicklisp quickstart loaded”,为什么?如何解决?
lisp - 如何定义和使用 Common Lisp 包(库)?
我在几个 Lisp 源文件中开发了一些 Common Lisp 函数,我希望这些函数可以很容易地用于我编写的其他函数,或者如果我认为它们对其他人有用,可以在 github 上使用它们。现在,我只是将它们放在一些预定义的文件夹中并使用(require "/path/to/my/modules/module.lisp")
.
我想了解定义 Lisp 模块库的正确(规范 Lisp)方法是什么。问题的第二部分是如何使用它们(我是否定义了它们,或者我是否从其他人那里获得了它们)。
我已经阅读了很多关于defpackage
anddefsystem
和的文章asdf
。但我读过的所有内容似乎都集中在这项任务的某个特定领域。我在查看自定义模块创建、部署和使用的大局时遇到了很多麻烦。因此,假设我面前有 Lisp 环境(CLISP 或 SBCL)和一个或多个.lisp
我想从中制作包或库的文件,是否有文档解释了执行此操作所需的步骤?这可能是我已经阅读过的内容,但由于不了解上下文而没有跟踪。我所读到的关于 ASDF 的内容在功能上似乎是我所追求的,但我不明白 ASDF 是否是我唯一的选择,或者它是否恰好是事实上的标准和大多数其他人使用的,或其他什么。我在 SBCL 中使用过它,但不确定我是否正确使用它,也没有看到有关如何在 CLISP 中设置它的信息。所以我想了解这个任务的中上层、普通方法是什么。
我知道这是一大堆草率的子问题。同样,如果有一些好的参考资料可供参考,我可以阅读。我只是无法全面了解它应该如何工作,以及是否有任何“最佳”方法,或者在 Lisp 中,它是否有点像“狂野西部”选择库-经理-你喜欢的方法。我做了谷歌的事情并阅读了任何看起来相关的东西,但我的大脑正在旋转。
谢谢。
common-lisp - 如何在 CLISP 的批处理模式下使用快速 lisp
我可以使用通过快速 lisp 安装的软件包: Using packages installed from quicklisp with clisp
我尝试使用命令行执行使用包的 lisp 代码。代码是
当我尝试使用 时clisp ex.lisp
,我收到以下错误消息:
我不得不使用clisp < ex.lisp
加载包。
这两种方法有什么区别?是clisp < ex.lisp
在命令行中使用包的唯一方法吗?
我发现了如何在将 CL 程序作为 shell 脚本调用时使用 quicklisp?,但它不适用于 clisp。