Course Description

Rust doesn’t have to be an all or nothing proposition. Rust is very good at sliding into an existing platform, allowing you to focus on optimizing – both for speed and safety – the parts that matter without throwing away all of your existing hard work.

Course Outline

  • Introducing FFI, the Foreign Function Interface.
  • Consuming a C library from Rust:
  • From C to Rust:
  • Calling Go from Rust
  • Building a Rust FFI Crate
  • Consume the Rust crate from C
  • Consume the Rust crate from Go
  • Managing Your Build Process – Practical Observations
  • Porting Parts to Rust
  • Build an HTTP authentication service with Actix in under 200 lines of Rust.
  • Build an efficient, binary protocol server with Tokio.
  • Combining asynchronous high-performance I/O with CPU-bound computation.
  • Event tracing
  • Use a Unikernel to host a Rust service as a single-purpose virtual machine.
  • Use WebAssembly (WASM) to host high-performance code in the browser.
  • Build without a standard library for embedded targets