|
| 1.6, Ананоним (?), 16:25, 26/03/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Эти лямбда-функции только уродуют язык. Для ленющих погромистов, которым влом было писать имена инлайновых функций по старому стилю.
| | |
| 1.7, Аноним (7), 16:45, 26/03/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
Без do-нотации - набор заклинаний, с do-нотацией - тоже набор заклинаний. А какую задачу решают - неизвестно.
| | |
| |
| 2.13, Аноним (-), 17:11, 26/03/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> А какую задачу решают - неизвестно.
А ты на хабр сходи - сразу узнаешь.
(Ссылка есть в тексте новости, под новостью и в комментариях, чтобы ты случайно не пропустил)
| | |
| 2.15, Аноним (15), 17:23, 26/03/2026 [^] [^^] [^^^] [ответить]
| +1 +/– | |
> А какую задачу решают - неизвестно.
Возобновляемые функции.
Удобно при всяком получении данных.
Типа
let records = getRecords(тут твои параметры)
А дальше ты просто интегрируешь records, пока есть данные. getRecords может отдавать записия скажем по 100, инкапсулируя логику перебора и текущие офсеты.
К слову, через yield в него еще и передавать значения можно, правда хз зачем, это будет сложно дебажить
> Без do-нотации - набор заклинаний, с do-нотацией
Ну так оно и сделанно черт пойми какими костылями тут.
При нормальной реализации он должен выглядеть как-то так:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objec
| | |
| |
| 3.27, Bottle (?), 20:55, 26/03/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
Хорошо, а как возобновляемые функции помогут тебе на практике?
Что оно решит? Какие технические расчёты проще написать в do-нотации? Станет ли код от этого быстрее?
Станет ли написание кода быстрее?
| | |
| |
| 4.30, Вася Пупкин (?), 23:58, 26/03/2026 [^] [^^] [^^^] [ответить]
| +/– |
"возобновляемые функции" позволяют лаконично отдавать куски данных дальше в следующую часть логики - например обработать и раньше начинать отдавать ответ клиенту потоково. при этом затрачивая меньше оперативы, поскольку не нужно хранить весь итерируемый массив целиком.
| | |
|
|
| 2.20, Аноним (-), 18:47, 26/03/2026 [^] [^^] [^^^] [ответить]
| +1 +/– | |
Чтобы вручную не выпиливать конечный автомат ты можешь воспользоваться генератором, написать вполне себе императивный код, который из цикла будет выплёвывать значения. Генератор выпилит тебе этот конечный автомат. Или это может быть реализовано как корутина. Но фишка в том, что конечный автомат выпиливать вручную требует заметно больше усилий.
А если тебе конкретный пример нужен, то можно взять какой-нибудь лексер, который разбирает поток и выплёвывает токены. На вызывающей стороне это выглядит как итератор по токенам, то есть грубо говоря функция next_token, а реализация -- это конечный автомат. Либо ты пишешь его руками, весь этот switch по состояниям, отслеживая переключения между состояниями, либо ты пишешь императивный код, который просто цикл по байтам.
| | |
|
| 1.8, Аноним (8), 16:49, 26/03/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Сначала был императивный язык, затем поверх навертели функциональный, затем уже поверх него накрутили опять императивный. Цикл замкнулся...
| | |
| |
| 2.11, Аноним (4), 17:05, 26/03/2026 [^] [^^] [^^^] [ответить]
| +/– |
В гитхаб репозитории есть CI/CD. Там и показано, что на gcc оно работает. Да и в статье про это написано (нужен g++ 15.2.1 и выше)
| | |
|
| |
| 2.18, Аноним (4), 18:36, 26/03/2026 [^] [^^] [^^^] [ответить]
| +/– |
Потому что могут. Могут и делают. А на основе этого можно сделать ещё что-нибудь другое.
| | |
|
| 1.24, Аноним (24), 19:23, 26/03/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Выглядит как неграмотная попытка студента в TMP. Велосипедов этих написано несчитанное количество. Штука запутывающая код, вызывающая удивление у анализаторов, IDE и сторонних разработчиков.
Автор не мог бы быть любезен озвучить свою фамилию чтобы его точно на работу не брать?
И вообще зачем это здесь?
Низачот.
| | |
| |
| 2.26, Аноним (4), 20:02, 26/03/2026 [^] [^^] [^^^] [ответить]
| +/– |
Так оно не для прода. В статье так и сказано, что в прод брать не стоит. В статье всё написано.
| | |
|
| 1.25, Аноним (24), 19:59, 26/03/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Вот разбираешь легаси код в проекте которому больше 10 лет и такие вот "подарки" коллегам частенько попадаются от какого нибудь неумного студентика который давно свалил и вызывает это много негативных эмоций... приходится вычищать разумеется.
| | |
| |
| 2.29, Аноним (29), 23:17, 26/03/2026 [^] [^^] [^^^] [ответить]
| +/– |
В проектах 30+ лет по стилю кода чувствуешь когда какой функционал появился. Ну и само собой разумеется, стилевой выпендрёж вычищается. Потому что это сложно читать, сложно менять, да и в целом толку мало.
| | |
|
|