-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Немного стилистических изменений #7
Conversation
Merge pull request JustAGod1#6 from AndrewKraevskii/master
what de actual fuck мне необходимо время подумать над такими приколами |
Идея в том что find будет просто получать элементы из итератора до тех пор пока не встретит нужный и сразу завершится. И каждый раз при получении нового элемента вычисляется следующий шаг эвм. take(100) ограничит выполнение до 100. Тоесть итератор полюбому завершится после 100 итераций или когда сработает предикат в find. Что в данном случае эквивалентно оригинальному коду. |
Это то очев. Я просто не уверен на сколько это правильно говорить, что компьютер это итератор. Это как будто бы семантическо-стилистически не правильно. А может и правильно, надо поговорить со своим внутренним типизатором. Пик рилейтед. |
Мне кажется у компьютера должен быть способ получить итератор, но сам компьютер итератором быть не должен. Но если так подумать это не совсем компьютер а скорее состояние компьютера и итерироваться по состояниям уже звучит норм |
В моей голове итерироваться по состояниям компьютера это если бы итератор выдавал состояния компьютера. На самом же деле он выдает енам результата выполнения команды, что как будто бы не одно и то же. Получается, что каждый next итератора изменяет состояние себя чтобы выдать следующий результат, что как будто супер ок для любых итераторов, но в нашем случае итератор превращается из штуки для работы с массивом данных в инструмент управления состоянием, что как будто бы неправильно. Но с другой стороны эта абстракция ничему не мешает и добавляет приколов. Да и раст как будто бы тот язык, который любит кучу трейтов на всем. В общем отревьювлю завтра и наверно смержу. thx for contributing. |
Да я ещё подумал это и правда не очень идея т.к. в привычном понимании мы не можем менять итератор между итерациями (в моём понимании). А мы ровно это и делаем |
Идея превратить Computer в итератор слишком забавная чтобы её не реализовать. Так можно использовать find вместо while cond {}.