【发布时间】:2020-04-22 03:08:57
【问题描述】:
我有一个包含几个变量的循环;其中一个在每一步递增。然而,有时这个变量可能会被重置为 0。因此我可以这样写:
(loop
with z = 0
...
do (progn
(setq (z (1+ z)))
...
(if ...
(setq z 0))))
但看起来我也可以写:
(loop
for z from 1
...
do (progn
...
(if ...
(setq z 0))))
第二个版本更短(减少了一行);但我不确定它是否真的干净;是否完全符合 Lisp 标准?
【问题讨论】:
标签: loops variables lisp common-lisp