Re[12]: Сильные стороны функционального программирования
От: Курилка Россия http://kirya.narod.ru/
Дата: 01.09.04 11:49
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Здравствуйте, Gaperton, Вы писали:

S>>> Там вроде бы yield придумали в версии 2. Специально для ленивых циклов.
G>>Сомнительно. Если этот yield будет иметь ленивую семантику, это будет означать неопределенный порядок вычислений. Что не является граблями только в случае, если программа состоит из чистых функций (если побочные эффекты отсутствуют). Вот собственно и все — ленивые вычисления безопасны только при отсутствии побочных эффектов, а это и есть основная отличительная характеристика ФЯ.
S>Ну, я так понял, что нифига там ленивые вычисления не безопасны. Надо самому следить за порядком вычислений, либо за отсутствием побочных эффектов у yield. Yield всего лишь облегчает реализацию итераторов, которые и в императивном случае вполне ленивы.

Т.е. ничего практически строгого не получается и весь груз ответственности ложится на программера, а не на компайлер?
Что-то как-то такое решение мне не кажется особо хорошим...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.