Forwarded from Stanislav Popov
почитал простыни https://blog.guillaume-gomez.fr/articles/2017-02-22+Rust+asynchronous+HTTP+server+with+tokio+and+hyper
blog.guillaume-gomez.fr
Rust asynchronous HTTP server with tokio and hyper
tuto articles
Forwarded from Stanislav Popov
реально кажется ух вот в питонке все красиво, типы нинужны
Hirrolot:
типы засоряют код в расте
F: Fn() -> Fut, Fut: Future<Output = ()>
типика лкод
можно было бы так записать: async Fn()
типы засоряют код в расте
F: Fn() -> Fut, Fut: Future<Output = ()>
типика лкод
можно было бы так записать: async Fn()
Forwarded from PLComp
Programming Paradigms for Dummies: What Every Programmer Should Know
Ликбез по основным принципам ЯП: классификация, вопросы представления состояния, конкурентности и параллелизма.
https://www.info.ucl.ac.be/~pvr/VanRoyChapter.pdf
Ликбез по основным принципам ЯП: классификация, вопросы представления состояния, конкурентности и параллелизма.
https://www.info.ucl.ac.be/~pvr/VanRoyChapter.pdf
Forwarded from hirrolot
T* - мутабельный указатель на мутабельные данные
const T* - мутабельный указатель на константные данные
const T* const - константный указатель на константные данные
T * const - константный указатель на мутабельные данные
const T* - мутабельный указатель на константные данные
const T* const - константный указатель на константные данные
T * const - константный указатель на мутабельные данные
Doge Shibu:
Можно сделать мутабельное ООП в ФП языке на IORef'ах
См. статью Олега
Roman Proskuryakov:
дай ссылку
Doge Shibu:
https://arxiv.org/pdf/cs/0509027.pdf
https://www.tg-me.com/rust_offtopic/250638
Можно сделать мутабельное ООП в ФП языке на IORef'ах
См. статью Олега
Roman Proskuryakov:
дай ссылку
Doge Shibu:
https://arxiv.org/pdf/cs/0509027.pdf
https://www.tg-me.com/rust_offtopic/250638
Telegram
Doge Shibu in rust_offtopic
https://arxiv.org/pdf/cs/0509027.pdf
Вот он здесь или на гитхабе. Пилится с бешеной скоростью одним чуваком из MIT и, кажется, является конкурентом Halide. Типа язык для написания очень производительного кода для параллельных вычислений и при этом дифференцируемый. Кажется, что на нём можно переписать тот же TensorFlow и он станет быстрее. И не заморачиваться со Swift.
учитывая, что в этой области сейчас как-то тухло, для для CUDA конкурентов нет, но она только на Nvidia, то что-то должно выстрелить в конце концов. Кто-нибудь смотрел, пробовал, запускал что-нибудь на этом Taichi?
https://github.com/yuanming-hu/taichi
учитывая, что в этой области сейчас как-то тухло, для для CUDA конкурентов нет, но она только на Nvidia, то что-то должно выстрелить в конце концов. Кто-нибудь смотрел, пробовал, запускал что-нибудь на этом Taichi?
https://github.com/yuanming-hu/taichi
GitHub
GitHub - yuanming-hu/taichi: My fork of https://github.com/taichi-dev/taichi
My fork of https://github.com/taichi-dev/taichi. Contribute to yuanming-hu/taichi development by creating an account on GitHub.
(RSDN)
Но вот этот момент хочу прокомментировать. К сожалению, все мало-мальски известные функциональные языки (Haskell, ML, Erlang, Lisp, Scala) страдают (или наслаждаются?) одним и тем же фатальным недостатком — ужасным и невыносимым уродством синтаксиса. Из-за чего даже просто пробовать их не возникает особого желания.
Правильный функциональный язык — на поверхностном уровне — ДОЛЖЕН мимикрировать под C/Pascal!!! Без этого базового требования рыночная доля функциональщины никогда не выйдет за маргинальные пределы, в которых она и находится последние 60 с хреном лет, начиная с изобретения лиспа.
Правильный язык должен быть простым и понятным для освоения, раскрывающим "функциональные глубины" постепенно. Более того, должна быть возможность писать хелловорлды и простые программы императивным способом. И это подтверждается реальностью: недофункциональные Lua, Python, JavaScript, Rust имеют гораздо большую популярность, чем их хардкорные братья.
Кроме того, язык должен "прикольным", вызывать интерес. Ублюдочные же закорючки в хаскеле или окамле вместо интереса вызывают неприязнь.
Но вот этот момент хочу прокомментировать. К сожалению, все мало-мальски известные функциональные языки (Haskell, ML, Erlang, Lisp, Scala) страдают (или наслаждаются?) одним и тем же фатальным недостатком — ужасным и невыносимым уродством синтаксиса. Из-за чего даже просто пробовать их не возникает особого желания.
Правильный функциональный язык — на поверхностном уровне — ДОЛЖЕН мимикрировать под C/Pascal!!! Без этого базового требования рыночная доля функциональщины никогда не выйдет за маргинальные пределы, в которых она и находится последние 60 с хреном лет, начиная с изобретения лиспа.
Правильный язык должен быть простым и понятным для освоения, раскрывающим "функциональные глубины" постепенно. Более того, должна быть возможность писать хелловорлды и простые программы императивным способом. И это подтверждается реальностью: недофункциональные Lua, Python, JavaScript, Rust имеют гораздо большую популярность, чем их хардкорные братья.
Кроме того, язык должен "прикольным", вызывать интерес. Ублюдочные же закорючки в хаскеле или окамле вместо интереса вызывают неприязнь.
Forwarded from Stanislav Popov
во
let mut chan = {
let state = state.borrow_mut();
state.new_media_channel.clone()
};
let mut chan = {
let state = state.borrow_mut();
state.new_media_channel.clone()
};
Forwarded from Маjко
Суть в том что мутируя объекты ты можешь в том числе переаллоцировать память. Из-за чего ссылки на старую память протухают, и становится возможным use-after-free.
Нет такого правила что «нельзя 2 мутирующих ссылки» есть правило «мутирующая ссылка могут существовать только эксклюзивно любых других»
Нет такого правила что «нельзя 2 мутирующих ссылки» есть правило «мутирующая ссылка могут существовать только эксклюзивно любых других»
Forwarded from Ivan Boldyrev
pyo3 по-прежнему требует nightly.
Вот тут кто-то собрал информацию для разных языков, в т.ч. для Rust из Python:
https://www.hobofan.com/rust-interop/#rust-in-python
Вот тут кто-то собрал информацию для разных языков, в т.ч. для Rust из Python:
https://www.hobofan.com/rust-interop/#rust-in-python
Forwarded from Денис
не могу не забросить: https://docs.rs/futures-retry/0.5.0/futures_retry/struct.FutureRetry.html
FutureRetry::new(|| reqwest::get(url), handle_connection_error)
, пример https://gitlab.com/mexus/futures-retry/-/blob/master/examples/tcp-client.rs#L26docs.rs
futures_retry::FutureRetry - Rust
API documentation for the Rust `FutureRetry` struct in crate `futures_retry`.
Forwarded from Денис
пример кастомного обработчика с максимальным количеством ретраев: https://docs.rs/futures-retry/0.5.0/futures_retry/trait.ErrorHandler.html
docs.rs
futures_retry::ErrorHandler - Rust
API documentation for the Rust `ErrorHandler` trait in crate `futures_retry`.