История изменений
Исправление ugoday, (текущая версия) :
в CL это стандартная конструкция, обязательная к реализации, есть ли альтернативные реализации помимо тех что есть в компиляторе?
CL это 15-й стандарт из https://xkcd.com/927/. Вот, в других лиспах были разные реализации для циклов, а тут упорядочили.
Это ведь можно заменить на:
Я, пожалуй, выскажусь на эту тему в последний раз, а то уже на третий круг пошли. Моя позиция простая как правда: что бывает, то и может быть, а чего не может быть, того уж никак не бывает. Соответственно, мы не пытаемся гадать, опираясь на свойства исследуемых компонент, а непосредственно смотрим на реальность. В реальности развитие С идёт по принципу «комитет придумал стандарт → gcc выпустила новую версию». #define же используется для подстановки платформоспецифичных констант или подобной мелочи. С++ свои шаблоны тоже не от безделья придумал. Реальность такова, что #define не подходит для сложных штук. Спорить с реальностью можно, но это, пожалуй, без меня.
P.S. Про разные реализации циклов, посмотрите примеры https://lispcookbook.github.io/cl-cookbook/iteration.html
Исходная версия ugoday, :
в CL это стандартная конструкция, обязательная к реализации, есть ли альтернативные реализации помимо тех что есть в компиляторе?
CL это 15-й стандарт из https://xkcd.com/927/. Вот, в других лиспах были разные реализации для циклов, а тут упорядочили.
Это ведь можно заменить на:
Я, пожалуй, выскажусь на эту тему в последний раз, а то уже на третий круг пошли. Моя позиция простая как правда: что бывает, то и может быть, а чего не может быть, того уж никак не бывает. Соответственно, мы не пытаемся гадать, опираясь на свойства исследуемых компонент, а непосредственно смотрим на реальность. В реальности развитие С идёт по принципу «комитет придумал стандарт → gcc выпустила новую версию». #define же используется для подстановки платформоспецифичных констант или подобной мелочи. С++ свои шаблоны тоже не от безделья придумал. Реальность такова, что #define не подходит для сложных штук. Спорить с реальностью можно, но это, пожалуй, без меня.