Our great sponsors
-
tokio
A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
For interoperating with Python, check out PyO3 or rust-cpython. (More generally, see Rust Interop and Are We Extending Yet?)
For coroutines or as an alternative to fibers, Rust has async and await as syntactic sugar for the Future trait, and the most popular runtime is Tokio.
For interoperating with Python, check out PyO3 or rust-cpython. (More generally, see Rust Interop and Are We Extending Yet?)
For JSON, try Serde. (Technically, serde_json, but you want to learn about Serde's declarative API for serializing and deserializing arbitrary formats.)
For embedding DSLs, nom (parser combinators) or Pest (PEG) are popular parser frameworks. However, given that LR parsing is most in the spirit of Rust's "check as much as possible at compile time" design, you might want to try LALRPOP or grmtools.
For HTTP, look at hyper.
Big libraries like Boost or the Python standard library tend to develop as a workaround for weak package management so, with Cargo, efforts to produce Boost-like compilations (Eg. stdx) withered on the vine for lack of sufficient interest.