gpt4 book ai didi

common-lisp - 如何在 Common Lisp 中进行基于图像的开发?

转载 作者:行者123 更新时间:2023-12-02 06:13:05 24 4
gpt4 key购买 nike

我是 Common Lisp 的新手。这就是我用其他语言开发程序的方式,也是我现在用 Common Lisp 开发程序的方式:

  • 打开文本编辑器(例如 vim 或 emacs)以创建/编辑文本文件。
  • 将源代码写入文本文件。 (如果不确定代码片段的行为,并且 REPL 可用,则在 REPL 中评估代码片段,验证代码片段是否按预期评估,然后返回编写更多代码。)
  • 保存文本文件。
  • 要求编译器/解释器加载并运行文本文件中的源代码。 (例如 sbcl --script myprog.lisp )
  • 如果需要,请转到步骤 1。

  • 这是大多数编程语言的常规编写-编译-运行开发周期。然而,在lisp的世界里,我听到诸如“交互式开发”和“基于图像的开发”之类的东西,我觉得我错过了Common Lisp的一个重要特性。如何进行“基于图像的开发”而不是“编写-编译-运行开发”?

    有人可以提供类似于我在上面描述的“编写-编译-运行开发”的“基于图像的开发”的分步示例吗?

    (注意:我使用的是 SBCL)

    最佳答案

    在典型的 Common Lisp 实现中,运行时、编译器、部分开发环境和您正在开发的程序驻留在同一个程序中并共享同一个对象空间。在您开发程序时,编译器始终可用,并且程序可以增量开发。开发工具可以访问所有对象并可以检查它们的状态。还可以从正在运行的程序中取消定义/删除、替换、增强功能。

    因此:

  • 不要重启你正在开发的程序。保持联系并更新它。甚至几天、几周或几个月——如果可能的话。
  • 以这样一种方式编写代码,以便在必要时可以从头开始复制和构建程序。不时构建它并修复任何构建问题。
  • 一旦您使用我们的程序并且出现错误 -> 修复程序中的错误,同时能够检查完整的错误状态
  • 创建一个正在运行的程序要么一直将所有代码加载到一个普通的 Lisp 中,要么用加载的代码/数据保存一个可执行图像

  • 程序错误的修复也可以作为编译后的 Lisp 文件发送给用户,这些文件被加载到交付的程序中,然后更新代码。

    关于common-lisp - 如何在 Common Lisp 中进行基于图像的开发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57697459/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com