Size: a a a

2020 December 23

A

Alexey in Rust Beginners
Сергей
Есть ещё combine, он мне нравился больше, чем nom, т.к. там функции, а не макросы, но nom кажется сейчас тоже уже на функциях.
Спасибо! Почекаю
источник

A

Alexey in Rust Beginners
Кстати, есть ли еще какие-то варианты сделать интерфейс для питона? Помимо pyo3
источник

AT

Alexander T in Rust Beginners
Alexey
Видимо придется писать все самому, есть какие-то тренды в написании парсеров? Что сейчас лучше всего использовать? nom? peg? Может есть что-то еще?
источник

Jøhn Đøꝩsøn in Rust Beginners
Alexey
Да, ты прав, проверил имлиментацию на расте, она чуть-чуть медленее питона. Удивительно.
Но после pyo3 она медленее в два раза
Ты в релиз скомпилировать не забыл?
источник

A

Alexey in Rust Beginners
```[profile.release]
debug = false```
источник

AW

Alex Wow in Rust Beginners
Alexey
Кстати, есть ли еще какие-то варианты сделать интерфейс для питона? Помимо pyo3
раст в питонячий код , оффтом, ты хочешь в скрипте скрипт ? )
источник

A

Alexey in Rust Beginners
Вроде нет
источник

ИЛ

Иван Лещенко... in Rust Beginners
Alexey
```[profile.release]
debug = false```
И передал cargo флаг --release?
источник

Jøhn Đøꝩsøn in Rust Beginners
Я за две недели на SO штуки три таких бенчмаркеров видел, которые дебаг-билд раста с оптимизированым C сравнивали
источник

A

Alexey in Rust Beginners
Иван Лещенко
И передал cargo флаг --release?
Нет, не передавал, сейчас попробую вместе с ним
источник

ИЛ

Иван Лещенко... in Rust Beginners
Alexey
Нет, не передавал, сейчас попробую вместе с ним
bruh
источник

A

Alexey in Rust Beginners
5.2 сек - раст
54 сек - раст + pyo3
26 сек - питон
источник

A

Alexey in Rust Beginners
Помогло, но если вызывать код в питоне через pyo3 все-равно плохо =(
источник

A

Alexey in Rust Beginners
Иван Лещенко
И передал cargo флаг --release?
Не знал что настолько влияет, спасибо
источник

АК

Александр Караев... in Rust Beginners
Привет.
Есть структура Foo<'a>, которая парсится из &'a [u8] соответственно. Хочу сделать FooOwned (без зависимостей от лайфтайма), которая будет содержать data: Vec<u8> и foo: Foo<'???>, где foo ссылается на данные, которые лежат в data. Грубо говоря, хочу объединить в одну сущность ссылку на буфер и сам буфер.
Как решить задачу?
источник

K

Kitsu in Rust Beginners
Alexey
5.2 сек - раст
54 сек - раст + pyo3
26 сек - питон
Что-то не сходится
источник

K

Kitsu in Rust Beginners
Александр Караев
Привет.
Есть структура Foo<'a>, которая парсится из &'a [u8] соответственно. Хочу сделать FooOwned (без зависимостей от лайфтайма), которая будет содержать data: Vec<u8> и foo: Foo<'???>, где foo ссылается на данные, которые лежат в data. Грубо говоря, хочу объединить в одну сущность ссылку на буфер и сам буфер.
Как решить задачу?
Гугли self-referential structs. Если коротко, то нужен unsafe
источник

АК

Александр Караев... in Rust Beginners
Kitsu
Гугли self-referential structs. Если коротко, то нужен unsafe
А без unsafe? Возможно, задача решается как-то иначе, а FooOwned и не нужен.. Не могу придумать, мало опыта в расте
источник

MB

Mikail Bagishov in Rust Beginners
Alexey
Не знал что настолько влияет, спасибо
Без флага —release оптимизаций почти никаких не происходит
источник

ИЛ

Иван Лещенко... in Rust Beginners
Kitsu
Гугли self-referential structs. Если коротко, то нужен unsafe
Вроде это Cow, или я путаю?
источник