Size: a a a

2020 March 18

O

Ofee in pro.cxx
Побитый Кирпич
В асинхронном там в зависимости от архитектуры. На сопрограммах, например, можно сделать исключения, если на колбеках и boost asio, то там error_code-ы
Собственно, у меня на практике сейчас коллбеки, поэтому мне так сложно работать с исключениями. В планах переход на co_корутины, так что посмотрим, возможно, они дадут какой-то шанс исключениям
источник

PK

Pavel Kazakov in pro.cxx
Nikolay ?
И мне просто интересно как вот каждый из пунктов выглядит с кодами возврата )
это не буквальный код для подражания, а мыслительный эксперимент :) а написано это в 1997 году, к слову
источник

N?

Nikolay ? in pro.cxx
Pavel Kazakov
это не буквальный код для подражания, а мыслительный эксперимент :) а написано это в 1997 году, к слову
А я как раз предлагаю провести мысленный эксперимент на тему ответа на эти вопросы в случае кодов возврата
источник

O

Ofee in pro.cxx
Nikolay ?
И мне просто интересно как вот каждый из пунктов выглядит с кодами возврата )
Полагаю, в целой куче мест можно было бы гарантировать отсутствие исключений, например, для операторов сравнения. Если оператор сравнения в действительности может бросить исключение... Наверное, его так или иначе стоило вынести в отдельную именованную функцию. Я вообще за то, чтобы безопасные вещи писались легко, а опасные сложно. И то, что написать функцию, бросающую исключения (даже если не бросает) проще, чем небросающую — проблема дизайна языка, ещё раз, имхо
источник

PK

Pavel Kazakov in pro.cxx
я вообще-то не за коды возврата топил) мне они неинтересны как раз -- тут поинт в перебарщивании эксепшнами
источник

PK

Pavel Kazakov in pro.cxx
это не silver bullet
источник

N?

Nikolay ? in pro.cxx
Pavel Kazakov
я вообще-то не за коды возврата топил) мне они неинтересны как раз -- тут поинт в перебарщивании эксепшнами
А я без претензий )
источник

ПК

Побитый Кирпич in pro.cxx
Konstantin
интересно, какая сишная библиотека накладывает такие требования?
Любая С библиотека это накладывает и не только. Например функция которая передаётся в std::thread обязана быть noexcept. Функция которая передаётся в качестве делитера в shared_ptr обязана быть noexcept.
источник

IL

Ignat Loskutov in pro.cxx
ну не «быть noexcept», а не бросить исключение в пределах конкретного вызова (вызовов)
источник

АР

Андрей Руссков in pro.cxx
в случае с std::thread скорее уже неважно noexcept она или нет - все равно будет terminate
источник

A

ARCHANGEL in pro.cxx
коллеги, посоветуйте что-то по лексическим и синтаксическим анализаторам, но с учётом нововведений в С++. Чтоб не было древнейших библиотек типа флекс\бизон и сишного говнокода.
источник

EP

Egor Pugin in pro.cxx
ARCHANGEL
коллеги, посоветуйте что-то по лексическим и синтаксическим анализаторам, но с учётом нововведений в С++. Чтоб не было древнейших библиотек типа флекс\бизон и сишного говнокода.
flex/bison
источник

A

ARCHANGEL in pro.cxx
Egor Pugin
flex/bison
Ну хотя б antlr?
источник

EP

Egor Pugin in pro.cxx
там LL?
источник

A

ARCHANGEL in pro.cxx
не знаю (
источник

EP

Egor Pugin in pro.cxx
ок, а бизон что? новые версии регулярно выходят
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
ragel
источник

EP

Egor Pugin in pro.cxx
это про другое
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
да ладно?
источник

A

ARCHANGEL in pro.cxx
Egor Pugin
ок, а бизон что? новые версии регулярно выходят
сишный подход у него, нет ООП
источник