热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

如何在CommonLisp中进行基于图像的开发?

如何解决《如何在CommonLisp中进行基于图像的开发?》经验,为你挑选了1个好方法。

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

    打开文本编辑器(例如vim或emacs)以创建/编辑文本文件。

    将源代码写入文本文件。(如果不确定代码段的行为,并且REPL可用,则在REPL中评估代码段,验证代码段的评估是否符合预期,然后返回编写更多代码。)

    保存文本文件。

    要求编译器/解释器在文本文件中加载并运行源代码。(例如sbcl --script myprog.lisp

    如果需要,请转到步骤1。

这是大多数编程语言的常规写编译运行开发周期。但是,在Lisp世界中,我听到了诸如“交互式开发”和“基于图像的开发”之类的东西,而且我感到我错过了Common Lisp的一个重要功能。如何执行“基于图像的开发”而不是“写编译运行的开发”?

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

(注意:我正在使用SBCL)



1> Rainer Joswi..:

在典型的Common Lisp实现中,运行时,编译器,部分开发环境以及要开发的程序位于同一程序中,并共享相同的对象空间。在您开发程序时,编译器始终可用,并且可以逐步开发程序。开发工具可以访问所有对象,并可以检查其状态。也可以从正在运行的程序中取消定义/删除,替换,增强功能。

从而:

不要重新启动正在开发的程序。保持连接并更新它。甚至几天,几周或几个月-如果可能的话。

编写代码,以便在必要时可以从头开始复制和构建程序。不时进行构建,并修复所有构建问题。

一旦您使用我们的程序并且出现错误->修正程序中的错误,同时能够检查完整的错误状态

创建一个正在运行的程序是将所有代码一直加载到一个普通的Lisp中,或者是将可执行的映像与加载的代码/数据一起保存

程序错误的修复程序也可以作为已编译的Lisp文件提供给用户,该文件会加载到提供的程序中并随后更新代码。


推荐阅读
  • BashShell作为Linux的指定合作伙伴我们已经再熟悉不过了,使用Bash可以快速编写简单的脚本方便我们的日常比如善用vim,awk和sed三剑客,也可以创建十分复杂的逻辑, ... [详细]
  • 【技术分享】如何通过恶意插件在Atom中植入后门
    【技术分享】如何通过恶意插件在Atom中植入后门 ... [详细]
  • Haskell学习笔记:探索函数式编程之美
    使用教材:《learnyouaHaskell》,中文1-8章戳我准备工作。编译器&调试器:安装HaskellPlatform, ... [详细]
  • 经过前面的一系列工作后,GO的语言环境已经搭建完成。我们也初步体验了GO提供的大部分命令。但在正式进入开发之前,还有件工作要做,那就是选择一款适合自己的IDE。为什么使用IDE“程 ... [详细]
  • 本文详细介绍了Vim编辑器中的三种模式(命令模式、末行模式和编辑模式)以及它们之间的操作区别和切换方法。Vim编辑器凭借其多种命令快捷键和高效率的操作方式,得到了广大厂商和用户的认可。对于想要高效操作文本的用户来说,了解这些模式的使用方法是必不可少的。 ... [详细]
  • Linux配置IP地址大全
    IP地址配置方法一:编辑配置文件#编辑网卡参数[roottest~]#vimetcsysconfignetwork-scriptsifcfg-ens331TYPEE ... [详细]
  • 7.4 基本输入源
    一、文件流1.在spark-shell中创建文件流进入spark-shell创建文件流。另外打开一个终端窗口,启动进入spark-shell上面在spark-shell中执行的程序 ... [详细]
  • ANSI
    ANSI是什么编码?用Notepad创建一个文本文件text.txt,其默认编码格式为ANSI(乍看之下,还以为是ASCII ... [详细]
  • mysql和php的关系理解(php技术和mysql怎么结合)
    本文目录一览:1、apachephpmysql他们是什么关系 ... [详细]
  • Copyright(c)1985,1996,1998,2001,2002FreeSoftwareFoundation.Emacs指令通常包含有CONTROL键(有时候以CT ... [详细]
  •  像Slashdot这样的论坛上常常有人在攻击GNU,他们的观点在我看来完全是缺乏历史知识和不尊重历史。当GNU倡导称Linux为GNU/Linux时,这些人声称GNU企图从Linus ... [详细]
  • 前一段时间用Emacs,但我键盘的Ctrl键比较难按,但Emacs又是Ctrl到死的,老CtrlCtrl的按,手指受不了,而且我还没有到那种Emacs发烧友的程度:把Ctrl和CapsLock键换 ... [详细]
  • IPython 8.0 发布,Python 命令行交互工具
    IPython是Python的原生交互式shell的增强版,可以完成许多不同寻常的任务,比如帮助实现并行化计算;主要使用它提供的交互性帮助,比如代码着色、改进了的命令行回调、制表符完成、宏功能以及改进了的交互式 ... [详细]
  • 一、tf.transpose函数的用法tf.transpose(input,[dimension_1,dimenaion_2,..,dimension_n]):这个函数主要适用于交换输入张量的不同 ... [详细]
  • python3.7 安装pip3_python3的pip3安装
    ---恢复内容开始---pip3的安装需要对应一整套python的编译工具库,所以安装好的pip3是这个样子:inearAi:~$pip3-Vpi ... [详细]
author-avatar
k3as0n_701
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有