Size: a a a

2020 April 24

EG

Emmanuel Goldstein in rust_offtopic
Строковые литералы от этого не стали бы автоматически Span'ами
источник

G

Gymmasssorla in rust_offtopic
Gymmasssorla
В Idris можно, кстати. Называется "гетерогенное равенство"
Это немного другое (не функция a -> a -> bool), но всё же полезно знать термин иногда
источник

EG

Emmanuel Goldstein in rust_offtopic
Emmanuel Goldstein
Строковые литералы от этого не стали бы автоматически Span'ами
Но, к счастью, Vim позволил это довольно просто решить
источник

e

egoarka in rust_offtopic
Emmanuel Goldstein
Строковые литералы от этого не стали бы автоматически Span'ами
Ну ладно, но странный рефактор короче
Можно было проще как то
источник

EG

Emmanuel Goldstein in rust_offtopic
Засунул заворот строкового литерала в макрос, и осталось только нажимать @@ и n, пока всё само не сделается.
источник

e

egoarka in rust_offtopic
Нормуль
источник

EG

Emmanuel Goldstein in rust_offtopic
egoarka
Ну ладно, но странный рефактор короче
Можно было проще как то
Я раньше парсил строки, теперь я паршу Span'ы, чтобы запоминать где что было
источник

EG

Emmanuel Goldstein in rust_offtopic
Бляяя, потом ещё рантайм ошибки делать
источник

EG

Emmanuel Goldstein in rust_offtopic
Почему нельзя просто выводить программисту «ты мудак, иди ищи баг», а надо искать конкретное место, где его программа упала
источник

EG

Emmanuel Goldstein in rust_offtopic
Emmanuel Goldstein
Вру, 73 ошибки компиляции в тестах.
А вот теперь они в рантайме падают, потому что Span сравниваются не так же, как строки
источник

EG

Emmanuel Goldstein in rust_offtopic
Но это тоже фиксиццо макросами
источник

p

polunin.ai in rust_offtopic
Emmanuel Goldstein
Почему нельзя просто выводить программисту «ты мудак, иди ищи баг», а надо искать конкретное место, где его программа упала
делюсь опытом: я сделал Spanned<T> и реализовал Deref для него. В итоге я все что надо обрачиваю в Spanned (там хранится поле span), таким образом у структуры просто появляется поле дополнительное.
источник

EG

Emmanuel Goldstein in rust_offtopic
polunin.ai
делюсь опытом: я сделал Spanned<T> и реализовал Deref для него. В итоге я все что надо обрачиваю в Spanned (там хранится поле span), таким образом у структуры просто появляется поле дополнительное.
Для nom это уже есть готовое
источник

p

polunin.ai in rust_offtopic
там также само?
источник

EG

Emmanuel Goldstein in rust_offtopic
polunin.ai
там также само?
Да
источник

EG

Emmanuel Goldstein in rust_offtopic
Но это нужно, например, протаскивать через макросы
источник

EG

Emmanuel Goldstein in rust_offtopic
Бектрейсы паник раста какие-то потрясающе бесполезные
источник

EG

Emmanuel Goldstein in rust_offtopic
90% бектрейса где-то в кишках
источник

.

..:: махуноф ::..... in rust_offtopic
ачё)
источник

EG

Emmanuel Goldstein in rust_offtopic
Хочу RUST_BACKTRACE=short, чтобы выводило только релевантную часть
источник