Alex
нуждается )
Alex
парсер на цепочке замечательно себе падает.
Berkus
expect(line!().to_string())
error[E0599]: no method named `to_string found for type std::str::Split<'_, &str> in the current scope`
Berkus
блядь тупая идея в ` заворачивать вывод сообщений об ошибках
Anonymous
лол
Anonymous
может expect(&format!("{}", line!()))
Berkus
может expect(&format!("{}", line!()))
но это даст номер строки в исходнике, я и так его знаю
Berkus
так, ща я добавлю .inspect()
Anonymous
аа
Anonymous
вот тогда вообще не понимаю почему юзать анврап
Berkus
YAY, inspect() ftw
Berkus
это прекрасно чуваки
Berkus
usize -> isize и парсер магично смог обработать отрицательное число, очень круто
Anonymous
нормальная функциональщина не падает
в хаскеле любая IO операция крашит программу
Alex
YAY, inspect() ftw
что за inspect?
Berkus
что за inspect?
https://doc.rust-lang.org/core/iter/trait.Iterator.html#method.inspect
Berkus
полезная штука для отладки пайплайнов
Alex
фигасе
Alex
спасибо
Karey
А монады там на что?)
分解物質
ват
эксцепшены райзятся на ошибках io типа файла нет, привилегий нет или конец файла а ты читать пытаешся
Alex
наверное с хаскеля слизал
Berkus
просто io это сайдэффекты, в pure functional такое низя, вон оно в IO монаду и завернуто
Alex
нет
на отсутствие файла не кидается монада с ошибкой?
Anonymous
ты путаешь термины
Anonymous
в хаскеле вызывается эквивалент паника
Berkus
монады никуда не кидаются
Alex
на хаскеле не кодил есичо.
分解物質
на отсутствие файла не кидается монада с ошибкой?
в хачкеле не значение с ошибкой а эксцепшен, который ломает контрол-флоу и вешает прогу если не пойман
Alex
а монады зачем упомянули тогда?
分解物質
в хаскеле вызывается эквивалент паника
нет, там полноценные ексцепшены
Anonymous
нет, там полноценные ексцепшены
ну паники тоже можно ловить
Anonymous
а монады зачем упомянули тогда?
я вообще не понимаю какое отношение они к этому всему имеют если честно
分解物質
нет, там полноценные ексцепшены
https://www.stackage.org/haddock/lts-8.14/base-4.9.1.0/Control-Exception.html
Anonymous
потому что Maybe/Option это обычный контейнер
Anonymous
нет никакой логики в назывании его монадой
Anonymous
ну у него есть и методы функтора
Anonymous
почему не назвать функтором?
Anonymous
или foldable
Igor
или foldable
А в Idris монада ведь "наследует" функтор
Anonymous
ну да
Anonymous
оно и в хаскеле должно быть так
Anonymous
historical reasons
でゲソ
исходные данные я и так вижу, а пофейлилось оно НА ЧЕМ ИЗ ЭТИХ ДАННЫХ КОНКРЕТНО?
вот кстати я не так давно тоже пытался понять что же конкретно ему не понравилось, но так и не понял
でゲソ
вместо .expect() вызывать?
Berkus
он на итераторе вызывается, так что в любом месте где надо посмотреть где сейчас итератор и что он обрабатывает
Vladimir
Не, если честно то областей в выводе ошибок может и не хватает, но сохранение областей это очень задачи специфических парсеров. По этому тото енам ошибки в текущем виде вполне резонен.
Loo
https://github.com/sevagh/wireshark-dissector-rs/blob/master/README.md
Berkus
А Oak хорош!
Судзумия
Спасибо
Loo
http://fiatjaf.alhur.es/module-linker/#/rust
Vladimir
http://fiatjaf.alhur.es/module-linker/#/rust
Крутяк, жаль что юзаю сафари
Loo
да
Loo
https://prnt.sc/gf9pg8
Loo
на конкретные типы импортированные из модуля перейти не позволяет
Vladimir
Да там наверное ж не rls, а просто правила модульной системы
Vladimir
Еслиб РЛС то каждый гит бы тормозил с растом
Loo
эм. не знаю при чём тут рлс. он знает в каком файле какой модуль - т.е может найти и импортнутые из него сущности
Мерль
А кто чем пользуется для логирования?
Loo
мм. я fern юзаю
Loo
обёртка над log вроде
Filipp
а чем log не устраивает?
Filipp
или вы про бекенд? для него env_logger
Berkus
мм. я fern юзаю
папоротник хорош?