Почему эта форма не действительна? - PullRequest
1 голос
/ 08 июня 2011

Я новичок в Common Lisp. Я опробовал следующую форму:

(do ((n 0 (+ n 1)))
    (< n 10)
    (print n))

Clisp отвечает:

*** - IF: variable < has no value

Насколько я понимаю, форма do выглядит следующим образом:

(do (<lexically scoped variables> [per-iteration-expression])
    (end-expression)
    <statements>)

Где ошибка в моем понимании этого?

Ответы [ 2 ]

3 голосов
/ 08 июня 2011

Простите, мой Лисп ржавый, но разве это не должно быть >? И тогда не должно ли это быть ((> n 10))? (Две пары, а не одна. Вам нужно что-то там оценить).

Это может быть совершенно неправильно, но это будет моей следующей попыткой.

1 голос
/ 08 июня 2011

Согласно это (случайный результат поиска Google), второй термин должен быть ((end-expression) return-value).

...