LINUX.ORG.RU

История изменений

Исправление Sectoid, (текущая версия) :

Вон dotimes тупо разорачивается в goto. После чего компилятору нужно понять что это цикл, догадаться где условие выхода и тд

Таков стандарт CL. Хотя, наверное, можно было бы для случаев, когда не указан tag, не «разворачиваться» в label/goto. Но скорее это усложнение.

Потому что мешают оптимизации.

Надо смотреть результирующий асм-код. И, опять таки, это беда не всех макросов, а конкретно ECL'овской реализации dotimes.

Исходная версия Sectoid, :

Вон dotimes тупо разорачивается в goto. После чего компилятору нужно понять что это цикл, догадаться где условие выхода и тд

Таков [http://clhs.lisp.se/Body/m_dotime.htm]стандарт CL. Хотя, наверное, можно было бы для случаев, когда не указан tag, не «разворачиваться» в label/goto. Но скорее это усложнение.

Потому что мешают оптимизации.

Надо смотреть результирующий асм-код. И, опять таки, это беда не всех макросов, а конкретно ECL'овской реализации dotimes.