I>>yield сам по себе вносит потери. Неважно, есть лишние циклы, или нет. x[i] заменяется на доступ через итератор. Вот уже проблема.
S>То есть ты не согласен с тем, что без yield был бы возможен Linq?
Объясни подробно, каким образом ты делаешь такой вывод?
Я то говорю о производительности этого yield и прямо пишу, что твои слова "yield ничего не стоит" не подтверждаются
S>С yield IEnumerable создается автоматически. Заметь IEnumerable!
И что? Сколько стоит использование IEnumerable ?
S> То что ты пишешь ну никак не относится к
Это потому, что ты задним числом правишь сообщения.
S> К которому ты упорно ставишь минусы и при этом сваливаешься на производительность yield.
Я только про это и говорю, потому как ты ты пишешь что yield ничего не стоит.
S>yield создает объект класса реализующий IEnumerable.
Ужос. И что дальше? Из этого следует, что yield ничего не стоит?
S> Как замедляется доступ к энумератору если он вызывает MoveNext. Передается то IEnumerable а не List или array.
Не к энумератору, а к значению. Вместо x[i] у тебя будет обращение к moveNext, switch присваивание Current, чтение Current.
S> Еще раз ответь с чем ты не согласен?
В который раз говорю — я не согласен с утверждением, что yield ничего не стоит.