【问题标题】:GNU Emacs Calculator with SBCL带有 SBCL 的 GNU Emacs 计算器
【发布时间】:2018-12-27 18:58:01
【问题描述】:

我一直在阅读GNU Emacs Calculator manual 以寻找有关如何以编程方式调用 lisp 程序中现有函数的说明。

我检查了名为“编程”的部分,但它似乎与扩展计算器更相关,而不是使用计算器进行编程。有一个名为“从你的 Lisp 程序调用 Calc”的部分讨论了程序员可以使用的 calc-eval 函数,但到目前为止,我还无法在 SBCL 中调用该函数。

似乎可以从 Emacs Lisp 以编程方式调用计算器函数,但我很想知道 SBCL 中是否也有类似的功能。

【问题讨论】:

    标签: emacs common-lisp sbcl


    【解决方案1】:

    GNU Emacs Calculator 是一个Emacs Lisp 程序。

    SBCL 是一个 Common Lisp 实现。

    ELisp 和 CL 是不同的语言(来自同一个 Lisp 家族)。

    这意味着您不能直接从 SBCL 运行 Emacs 计算器。

    但是,我写了一个ELisp compatibility layer,它允许我从CLISP(也是一个Common Lisp 实现)运行Emacs Calendar。 它应该允许您在 SBCL 中加载 Emacs Calculator 并运行其代码。

    【讨论】:

    • 好的,我去看看!我得去参加一个活动,但我一回来,我会检查一下,让你知道进展如何。谢谢!
    • 我不确定如何运行此代码。它无法在 sbcl 中正确加载。它说 clocc:src;cllib;base 不存在,并且 cllib 没有指定任何包,并且包 el 不存在。
    • 我从上面意识到我的错误,并下载了整个项目并尝试安装它。不幸的是,尝试在 cllib 中编译 port-ext 时出现编译错误。我会报告错误
    • 我已经从 CLOCC 项目安装了 CLLIB。但是,我仍然在努力访问计算器应用程序。关于如何做到这一点的任何想法?即使我这样做 (el::require 'calc-ext),系统也不知道在哪里可以找到计算器包。我查看了我的 /usr/share/emacs/24.5/lisp/ 目录,但系统不会在那里加载任何 .elc。
    • 您无法加载 .elc - 它们是 ELisp 编译文件。您应该弄清楚 SBCL load 是如何工作的——它在哪里找到要加载的 lisp 文件。至少您应该能够使用完整路径加载文件。
    猜你喜欢
    • 1970-01-01
    • 2015-07-02
    • 1970-01-01
    • 2011-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-17
    • 2016-01-05
    相关资源
    最近更新 更多