Common lisp 有什么区别吗;至于;及;作为「;循环中的关键字宏?
在Common Lisp中,在循环宏中,和以及as关键字的功能相同:Common lisp 有什么区别吗;至于;及;作为「;循环中的关键字宏?,common-lisp,Common Lisp,在Common Lisp中,在循环宏中,和以及as关键字的功能相同: (loop for i from 1 to 3 do (print i)) (loop as i from 1 to 3 do (print i)) 有没有什么细微的差别我错过了?如果没有,为什么还要麻烦使用两个不同但相同的关键字呢?: for和as关键字是同义词;它们可以互换使用。。。按照惯例,for引入新的迭代,as引入依赖于先前迭代规范的迭代 例如: 为什么 传统!:-) 而且,还有 “……计算机语言不仅仅是让计算机执
(loop for i from 1 to 3 do (print i))
(loop as i from 1 to 3 do (print i))
有没有什么细微的差别我错过了?如果没有,为什么还要麻烦使用两个不同但相同的关键字呢?:
for
和as
关键字是同义词;它们可以互换使用。。。按照惯例,for
引入新的迭代,as
引入依赖于先前迭代规范的迭代
例如:
为什么
传统!:-)
而且,还有
“……计算机语言不仅仅是让计算机执行操作的一种方式,而是……它是表达方法论思想的一种新的正式媒介。”
Abelson/Sussman“计算机程序的结构和解释”
瞧,我们写代码是为了让人们(包括6个月后的你们)阅读,而不仅仅是为了让计算机执行
让你的代码更具可读性的一切都是“公平的游戏”。aa现在我脑子里一直想着“屋顶上的小提琴手”的歌。举个例子怎么样?@RainerJoswig:现在足够好了吗?或者你想从一个实际的项目中得到一个“阅读生活的例子”吗?@sds:不,这是一个非常好的例子。非常感谢。
(loop for x from 1 to 10
as x2 = (* x x)
as x4 = (* x2 x2)
for y from 10 downto 1
as y2 = (* y y)
as y4 = (* y2 y2)
sum (* x4 y4))