1.Do
(do ((temp-one 1 (1+ temp-one))
(temp-two 0 (1- temp-two)))
((> (- temp-one temp-two) 5) temp-one)) => 4
(do ((temp-one 1 (1+ temp-one))
(temp-two 0 (1+ temp-one)))
((= 3 temp-two) temp-one)) => 3
第一次循环将temp-one和temp-two用初始值(1,0)初始化,再计算最后的循环终止条件,如果结果为false,那么运行body里的代码;第二次循环,先计算step-form里的内容,这里注意几点:1.后面的step-form可以引用前面变量的值(如第二个例子temp-two 0 (1+ temp-one))
但是step-form的计算是并行的,即在temp-two的step-form里引用temp-one的值只能是上一次循环结束时保存的值(如第二个例子当temp-two为3时,实际temp-one为2,因为temp-two不等temp-one的step-form执行完再执行自己的step-form,并行)。
2.do*
(do* ((temp-one 1 (1+ temp-one))
(temp-two 0 (1+ temp-one)))
((= 3 temp-two) temp-one)) => 2
Do*和do很相似,但是do*计算step-form时是串行的。
3.Dolist
(setq temp-two '()) => NIL
(dolist (temp-one '(1 2 3 4) temp-two) (push temp-one temp-two)) => (4 3 2 1)
(setq temp-two 0) => 0
(dolist (temp-one '(1 2 3 4)) (incf temp-two)) => NIL
temp-two => 4
(dolist (x '(a b c d)) (prin1 x) (princ " "))
>> A B C D
=> NIL
4.Dotimes
(dotimes (temp-one 10 temp-one)) => 10
(setq temp-two 0) => 0
(dotimes (temp-one 10 t) (incf temp-two)) => T
temp-two => 10
Dotimes是针对integer操作的(上面例子的10),var(temp-one)每次都会是0至10之间的一个数字,body里利用这个变量做些事情。
分享到:
相关推荐
AutoLISP是一种基于LISP语言的编程环境,专为Autodesk的AutoCAD软件设计,用于扩展AutoCAD的功能和自定义工作流程。这个压缩包文件包含了关于AutoLISP编程的教程,对于想要掌握这一技能的用户来说是宝贵的资源。 在...
CAD Lisp是一种基于Lisp语言的编程工具,常用于AutoCAD软件中,用于扩展和自定义CAD的功能。在“CAD-lisp.rar”这个压缩包中,包含的是一系列CAD Lisp源代码,这些源代码主要用于实现CAD中的图层管理、对象修改以及...
AutoLISP是一种基于LISP语言的编程方言,专为Autodesk的AutoCAD软件设计,用于扩展和自动化CAD操作。此压缩包文件“AutoLISP函数参考(明经翻译版).rar”提供了一份全面的AutoLISP函数参考资料,由明经翻译,方便用户...
LISP(List Processing)是一种古老而强大的编程语言,它的设计思想独特,主要应用于人工智能、计算机科学、软件工程等领域。在给定的“lisp工具.rar”压缩包中,包含了一个LISP程序,用于辅助绘图工具,使得用户...
Includes discussion and examples of advanced constructs for iteration, error handling, object oriented programming, graphical user interfaces, and threading. Supplements Common Lisp reference books ...
《autocad完全应用指南.autolisp+dcl+visual lisp程序设计篇》重点讲解autolisp、dcl、visual lisp三合一的autocad二次程序开发技术。《autocad完全应用指南.autolisp+dcl+visual lisp程序设计篇》分为4篇,共35章。...
AutoCAD 2010 AutoLISP参考手册是专为AutoCAD 2010设计者和开发者编写的,旨在帮助他们深入理解和利用AutoLISP语言进行程序开发。AutoLISP是一种基于LISP(列表处理)语言的编程环境,特别为AutoCAD定制,允许用户...
AutoLisp是一种基于Lisp语言的编程环境,专为Autodesk的AutoCAD软件设计,用于扩展和自动化CAD操作。这个入门教程将引导你逐步了解AutoLisp的基本概念、语法和功能,帮助你提升AutoCAD的使用效率。 首先,我们要...
ANSI Common Lisp 中文翻译版.pdf 此资源是 ANSI Common Lisp 的中文翻译版,涵盖了 Common Lisp 语言的基础知识和高级主题。该资源包含了 17 章节,从基础的列表、特殊数据结构、控制流程、函数、输入与输出、符号...
### .NET与LISP联合编程:实现现代与传统的融合 #### 概述 .NET作为一种主流且高效的开发平台,在工业设计、工程制图等领域被广泛采用。然而,在利用.NET平台进行CAD(Computer-Aided Design)软件的二次开发时,...
标题:“实用Common.Lisp编程.pdf” 描述:“实用Common.Lisp编程.pdf,2011.10出版” 从这些信息中,我们可以提炼出几个关键的知识点: ### Common Lisp语言简介 Common Lisp是一种高级的、通用的、多范式的编程...
标题中的“LISPforPLINE.rar_LISPforPLINE_cad_cad lisp_lisp_lisp 线”指的是一个与AutoCAD相关的LISP程序,主要用于处理“PLINE”,即多段线对象。这个程序是用LISP语言编写的,LISP是一种古老但功能强大的编程...
在AutoCAD环境中,LISP(AutoLISP)是一种强大的编程语言,它允许用户自定义功能,提高工作效率。对话框在AutoLISP编程中扮演着重要角色,为用户提供友好的交互界面,使用户能够输入参数、选择选项等。本文将详细...
### Lisp Excel:斯坦福的研究者实现的 Lisp 功能与 Excel 的集成 #### 概述 在《Lisp and Symbolic Functionality in an Excel Spreadsheet: Development of an OLE Scientific Computing Environment》这篇论文...
《MIT的LISP程序员手册》是MIT计算中心与电子研究实验室共同出版的一份详尽的LISP编程系统指南。这份手册由John McCarthy等多位在LISP语言开发领域有着卓越贡献的专家共同编写,旨在为LISP程序员提供全面的指导和...
《autocad完全应用指南.autolisp+dcl+visuallisp程序设计篇》重点讲解autolisp、dcl、visuallisp三合一的autocad二次程序开发技术。《autocad完全应用指南.autolisp+dcl+visuallisp程序设计篇》分为4篇,共35章。第1...
LISP,全称为“List Processor”,是一种历史悠久的高级编程语言,以其独特的链表数据结构和符号处理能力闻名。这份名为“LISP源码800例”的资源集合,显然是为那些想要深入理解LISP编程的人准备的。它包含了800个...
《autocad完全应用指南.autolisp+dcl+visuallisp程序设计篇》重点讲解autolisp、dcl、visuallisp三合一的autocad二次程序开发技术。《autocad完全应用指南.autolisp+dcl+visuallisp程序设计篇》分为4篇,共35章。第1...
Visual LISP是AutoLISP的一个扩展,提供了一个更友好的图形界面,用于编写、测试和调试LISP程序。 在AutoCAD中,AutoLISP语言被设计用来增强和扩展软件的功能。它允许用户创建新的命令,修改已有命令的行为,以及...
《Land of Lisp》和《Machine Learning in Action》是两本非常重要的IT图书,分别涵盖了Lisp编程语言和机器学习这两个核心领域。 首先,让我们深入探讨《Land of Lisp》。这本书由Conrad Barski撰写,旨在将读者...