Skip to content
Rust Search
← RustFest 2017

Macromancy - an introduction to Rust macros

Rust Programming Language
RustFest 29:01 2675 views

Many times you must reuse code And your generics aren’t commode Can you deal in the macro dark arts Recompose code of similar parts Or would the compiler explode? Rejoice! Follow now our ways Unlock the compiler’s high praise Listen here to this initiation Each eldritch arcane incantation Summons help ‘gainst the terrors we face.

Player unavailable or embedding blocked? Use the YouTube link above.

Other talks by Geoffroy Couprie

Sans IO: safe and testable network protocols

FOSDEM

Implementing network protocols is a hard task, especially considering the support of conflicting implementations, or long term maintenance. And it does not help that testing them often requires complex client or server setups. By removing IO from the equation, and instead working directly with buffers, we’ll see that testing instantly becomes easier to setup, the core implementation becomes completely deterministic, and the protocol gets more reusable. This talk draws heavily from experience implementing protocols such as HTTP or AMQP. It will show how to build protocols in such a way, using the nom parsing library, cookie-factory serialization library, and a new state machine development library. And we will see how to reuse the resulting protocols, by swapping out the underlying transport (TCP, various TLS libraries, unix sockets…) or wrapping it in a nice futures based API.

Sōzu, a hot reconfigurable reverse HTTP proxy

Rust Programming Language
RustFest 30:26 3165 views

Could you write a Rust program that never, ever has to stop? Not even for configuration changes or binary upgrades? One that will handle the traffic for thousands of applications on many more virtual machines that get up and down at any time? The Sōzu HTTP reverse proxy is there to solve that problem. This talk will cover various parts of its architecture, from its streaming HTTP parser built with nom, its single-threaded worker handling events with mio, and all the associated tooling to command and control the proxy. Geoffroy Couprie http://geoffroycouprie.com/ https://github.com/Geal https://users.rust-lang.org/users/geal/activity

Integrating Rust and VLC

Confreaks
RustConf 32:47 4211 views

RustConf 2016 - Integrating Some Rust in VLC Media Player by Geoffroy Couprie VLC media player has a nice goal for users: handle almost any file or protocol you throw at it. Unfortunately, this results in a lot of parser vulnerabilities, because most of the parsing code is handwritten in C. By leveraging Rust and the nom parser combinators library, could we replace some security critical parts of VLC?