andrei
стабл предлагает юзать nightly
andrei
лол
Маjко
Нормально, если фичи нужны
andrei
кароч я походу че-то не так делаю
andrei
как тут без лайфтайма обойтись?
andrei
Маjко
Вообще ты делаешь дичь
ㅤ
Где лайфтайм на функции и параметрах?
ㅤ
а че делать
Возвращать Стринг?
andrei
в доке так
ㅤ
Он клонабл
andrei
а если там не utf
Маjко
а че делать
String::from_utf8(output.stdout.clone())
Маjко
Тогда будет ошибка
ㅤ
Возвращать резалт, Стринг если юникод, иначе ошибка
Маjко
Сейчас у тебя возвращается Cow с лайфтаймом, который внутри функции
Маjко
Так не получится
andrei
а синтаксис ? для резалтов стабл?
Маjко
Конечно да
Маjко
Очень-очень давно
Маjко
Уже даже для Option question-mark стабл
պլհկ
@inv2004 я уже говорил, но ещё раз: с такими проблемами надо на реддит/оф. форум, где сами разработчики все разьяснят и по IRy разберут (а может и поправят). Здесь таких экспертов нет, наносекунды никто не считает.
Oleh Franchuk
Чем бенчмарк делаете?
Oleh Franchuk
Rustc имеет опцию incremental linking, что не наблюдаю?
Αλεχ
https://medium.com/@veedrac/rust-is-slow-and-i-am-the-cure-32facc0fdcb
This post stops short in describing _why_ internal iteration is faster in some circumstances. It seems to me that there’s no inherent reason, only that the compiler isn’t producing optimal code, so I don’t understand why adding traits and mental overhead is the right “solution”.
Αλεχ
полностью согласен с чуваком
Αλεχ
функциональный стиль намного лучше, чем какие-то булки прокидывать изнутри итератора
andrei
по таплам можно итерировать?
Αλεχ
Встроенного трейта нет. Но думаю, это потому что это бесполезно
Αλεχ
у тебя есть случай, где возвращается тапл неизвестной размерности?
Dårk
у тебя есть случай, где возвращается тапл неизвестной размерности?
тогда это какой-то неправильный, питоновский тапл. таплы это контейнеры, а не коллекции.
Kerrigan
питоновский тапл не может менять свой размер
andrei
а parse просто числа не вытаскивает из строк? "rust5353".parse::<i32>() падает
andrei
как parseInt в жс
Dårk
Dårk
в js и не такое работает
Dårk
не обязательно ж всё тащить в раст
andrei
как parseInt в жс
не, там NaN значит какой-то другая функция вытаскивала
Dårk
регулярку юзай, я хз
andrei
а ок
Αλεχ
Зачем регулярку?
Рома
match queue.wait_for_event() { MouseAxes{x: abc1, y: abc2 , ..} => {x_mouse = abc1; y_mouse = abc2;}, _ => (), }
Рома
как работает вот это x: abc1, y: abc2
Рома
как это называется, чтобы прочитать
Рома
переменные abc1 и abc2 больше нигде не объявлены
Αλεχ
rust fn main() { let num = "rust5353".chars().filter(|c| c.is_numeric()).collect::<String>().parse::<i32>().unwrap(); println!("{}", num); }
Anton
как это называется, чтобы прочитать
https://doc.rust-lang.org/1.6.0/book/patterns.html#destructuring
andrei
с лиспа на раст не так красиво выходит
Αλεχ
или так: rust fn main() { let num = "rust5353".chars().skip_while(|c| !c.is_numeric()).collect::<String>().parse::<i32>().unwrap(); println!("{}", num); } чтобы семантику сохранить
andrei
скрипт простой
Αλεχ
регулярки медленные, хотя преждевременная оптимизация тоже зло
Loyd
регулярки медленные, хотя преждевременная оптимизация тоже зло
Если регулярка развернётся в дка, то нихуя не медленно
Αλεχ
всегда медленно
andrei
дка?
Αλεχ
проверено
Αλεχ
по крайней мере покуда мы про практику говорим, а не про книгу дракона ))
andrei
я просто доку по чикен схеме после ракета не осилил, он походу единственный бинарники собирает
Αλεχ
дка?
https://habrahabr.ru/post/141503/
Kerrigan
FSM же
Loyd
всегда медленно
Чта? О чём ты вообще?
Loyd
Даже на задачах, где можно в КМП, регулярки не сильно медленнее будут
Loyd
Проверенно куча раз
Loyd
А где не применимо, то там и выбора особо нет
Cuno
У вас что-то у всех всё проверено, а линков на бенчмарки нету.
Loyd
Ну, может бенчи и есть
Loyd
Самое крупное, на чём проверялось — когда у одного букмекера была ручка, по которой можно было вытащить абсолютно все текущие события, отдавала 50-80миб
でゲソ
а че за underscore lifetime?
Похуй-какой-лайфтайм
Loyd
Зачем, если за тебя это сделает "компилятор" регулярок?
Αλεχ
Даже на задачах, где можно в КМП, регулярки не сильно медленнее будут
Пример выше во всех ЯП что я пробовал будет работать сильно быстрее, чем регулярка \D+(.+)
Αλεχ
на моем опыте прирост до 10 раз может доходить
Αλεχ
не считая времени на компиляцию регулярки, считаем что она вшита уже