"бесконечный loop {} тоже по сути «возвращают» !, потому что код после них недостижим. Что удивительно, выражения типа break, continue или return тоже обладают типом !" вот.
Я для себя пришел к выводу, что goto очень полезен в программирование микроконтроллеров. Когда у тебя какой-нибудь микроконтроллер с флеш памятью под программу меньше 16 Кб, то при помощи goto можно написать более лаконичный и оптимизированный код. А в остальном, я тоже дискриминатор ни в чем неповинного goto. Мне, почему-то, не хочется его встречать в чужом коде, который я читаю.
Можно было бы попробовать сыграть в предложенный вариант с текстовой доской. Так сказать, для чистоты эксперимента :) Возможно, кто-то обучал нейросеть играть в таком варианте...
"бесконечный
loop {}тоже по сути «возвращают»!, потому что код после них недостижим. Что удивительно, выражения типаbreak,continueилиreturnтоже обладают типом!" вот.Что значит loop не возвращает значения? Он то, как раз, и может это делать. let x = loop { break 123; };
По-моему, 415 килобайт - это все еще многовато для хелоуолда :) Помнится , минимальный ms-dos на дискете плюс-минус столько места занимал :)
Я для себя пришел к выводу, что goto очень полезен в программирование микроконтроллеров. Когда у тебя какой-нибудь микроконтроллер с флеш памятью под программу меньше 16 Кб, то при помощи goto можно написать более лаконичный и оптимизированный код. А в остальном, я тоже дискриминатор ни в чем неповинного goto. Мне, почему-то, не хочется его встречать в чужом коде, который я читаю.
Можно было бы попробовать сыграть в предложенный вариант с текстовой доской. Так сказать, для чистоты эксперимента :) Возможно, кто-то обучал нейросеть играть в таком варианте...
Не понял последний пример. Разве метод pop не удаляет с конца вектора? Он же с Err и начнет :)