Ещё об обработке ошибок в Rust

Aug 24, 2015 22:46

С обработкой ошибок в Rust надо явно что-то придумывать. Мне категорически нравится, что в языке нет исключений, но без синтаксического сахара вроде хаскелевской конструкции do код с аккуратной обработкой ошибок визуально превращается в простыню с перекладыванием значений из одних типов в другие ( Read more... )

exceptions, code, rust, errors, error handling, language

Leave a comment

Comments 27

slonopotamus August 26 2015, 16:44:09 UTC
Второй сниппет говно с точки зрения дебаггинга и расстановки брейкпоинтов. Первый снипет говно, т.к. основной success path забурился куда-то далеко вправо, вместо того, чтобы идти ровненько сверху вниз.

Reply

swizard August 26 2015, 17:52:03 UTC
Я в тексте же написал про макрос try! (и в комментариях уже обсуждали) - с ним всё ровно вниз идёт.

Функциональный интерфейс (чейнинг) де-факто не может быть говном, потому что он как раз спрямляет дерево вложенных циклов (из-за которого логика вправо уезжает) в ровный вертикальный код. Но там как раз не работает try.

Смысл поста в поисках истины.

Reply

slonopotamus August 26 2015, 19:47:37 UTC
Я вполне понимаю в чем смысл поста и всеми руками за Rust. Но кажется, что он таки чуть менее silver bullet, чем хотелось бы.

Reply


Detmifr anonymous November 2 2016, 12:56:06 UTC

Leave a comment

Up