【问题标题】:Plug-and-play Lisp implementation即插即用的 Lisp 实现
【发布时间】:2016-05-07 01:11:25
【问题描述】:

是否有即插即用的 Common Lisp/Scheme 实现?

我所说的即插即用是指使用 IDE 的实现,它不需要您以钢琴家的灵巧演奏和弦(所以不是 Emacs),您可以通过按下按钮来运行程序,而不是在控制台,带有现代库,并且是可移植的。

Racket 支持上述所有功能,但便携性除外。我在 Racket 中编写了一个程序,我无法发送给朋友,因为它无法在其他计算机上运行。我想制作我可以像 Java 程序员发送 Jar 文件一样轻松发送的程序,您可以通过双击运行它。

我也不喜欢 Clojure 的外观。

所以有个大问题:如果有人不懂编程,他能像选择 Java 或 C# 的人一样简单地使用这个实现来学习 LISP 吗?

【问题讨论】:

  • 为什么Racket程序不能在其他电脑上运行?
  • @coredump 显然 rsound 的库还不够成熟。 DLL 的路径是硬编码的,更新后它仍然不起作用。 at:jkiiski 语法太丰富了,让我想起了Java。我试图摆脱 Java 的噩梦。
  • 如果排除 Clojure 和 Racket,您的选择将非常有限。对于所有 Lisp 来说,没有成熟的库可用于所有内容是很常见的。请记住,没有任何 Lisp 拥有像 Java/C# 那样庞大的用户群或支持它们的大公司。做一些不寻常的事情可能需要使用 FFI。免费的 Lisp 实现通常没有自己的 IDE(可能是因为 Emacs 在你克服了学习曲线之后非常好)。
  • 嗯...我不确定这会产生什么影响,但如果我理解正确的话,您在使用 Racket 时遇到的几乎所有问题都有与我的rsound 库有关。所以...我道歉?
  • @JohnClements 完全没有,只是程序不能安装在别人的电脑上。

标签: ide scheme lisp common-lisp


【解决方案1】:

我认为您在描述中混合了许多不同的要求:

如果你需要编译成二进制可执行文件的东西,你可以使用一堆编译成可执行文件的 CL 实现。您甚至可以使用在 JVM 上运行的 https://common-lisp.net/project/armedbear/

如果您需要一些易于开始、嵌入了编辑器和运行时的东西,您可以使用http://www.lispworks.comhttps://common-lisp.net/project/lispbox/ 之类的东西。

但您似乎也在谈论语言。好吧,语法只是语言的一部分,不要只考虑它的语法来评估一种语言。

最后,我认为开始使用 Java 或 C# 并不容易。您可能认为这些 IDE 让生活更轻松,但实际上,安装它们、解决依赖关系并真正学习如何使用它们来提高工作效率需要时间。与您批评的 Emacs 相比,这些 IDE 的灵活性和可用性要差得多。我有一些为学生教授 CL 的经验,在 1-2 个月后很快就开始非常有成效地为什么选择 Emacs。

【讨论】:

    【解决方案2】:

    嗯,我认为现在安装 common lisp 和使用 quiclisp 安装 slime 非常容易,那么您可以快速轻松地拥有您的环境

    看看这个问题

    Setting the SLIME in emacs

    在 quicklisp 中:

    https://www.quicklisp.org/beta/#installation

    我还建议您看一下 roswell 并打算成为适用于主要环境的 lisp 安装程序和启动程序。

    在 github 上的 wiki 部分项目,他们有一个简单的形式,可以使用 roswell 启动 emacs:

    https://github.com/roswell/roswell/wiki

    【讨论】:

      【解决方案3】:

      要求你以钢琴家的灵巧弹奏和弦(所以不是 Emacs)

      可以使用记事本之类的 emacs 并使用菜单和按钮来执行操作,而不是组合键,虽然是任意的,但并不需要太多的灵巧性。使用过 SLIME 的人很清楚,您的 SLIME 满足您的要求,但对 emacs 是死心塌地。如果是这样,请尝试Allegro Common Lisp

      Racket 支持上述所有功能,但便携性除外。我在 Racket 中编写了一个程序,我无法发送给朋友,因为它无法在其他计算机上运行。我想制作我可以像 Java 程序员发送 Jar 文件一样轻松发送的程序,您可以通过双击运行它。

      在球拍中你可以使用raco exe 将产生一个独立的可执行文件,所以球拍也可以。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-02-11
        • 2013-08-01
        • 1970-01-01
        • 2023-03-25
        • 1970-01-01
        • 1970-01-01
        • 2011-02-04
        • 2012-11-14
        相关资源
        最近更新 更多