zayac/EqCode — comment on commit 69d4e5b432afb35800cd03216eb43cc641fbd0c9
File: docs/misc/stream-operators.txt line 151
By zayac:

1. То, что ты написал -- далеко не самый общий случай merge.
2. На данный момент конструировать потоки, задавая в индексах произвольные выражения типа [2*i], [2*i+1] -- нельзя. Объясню почему. Если я объявляю элемент потока на каждом шаге как a[i] = f(a[i-1], a[i-2], ...) и никаким другим образом, то статически мне известны необходимые начальные элементы и размер окна, т.е. все необходимое, и я могу гарантировать, что это корректный поток, для которого поведение в каждом состоянии определено. Если я разрешаю писать выражения вида a[\] = f(a[\], ...), то статически ничего нельзя проверить. Что делать, если я задаю такое выражение: a[i*i-5*i+4] = ...; или a[f(i)] = ...? Их можно разрешать, но будь готовым к runtime error в любое время