Skip to content
RustMTL January 2020

Details

Welcome back to Rust Montreal!

  • Join us at https://rustmtl.zulipchat.com
  • Message us if you want to do the "This Week In Rust" recap.
  • Or if you have a talk you want to give or a video you think we should show.

We'll also have quick, 1-3minutes per person lightning talks where anyone can come up, and tell us about the Rust project they're working on, what tools they're using, or any advice they're looking for.
Then we'll wrap up with more conversation. Come on by!

Schedule:
6pm: Doors open, come meet Rustaceans!
6:30-7:40pm, Content with breaks in between
7:40pm-8pm: Hang out

Childcare is available upon request (36hrs in advance).
There are 4 steps to enter the building, and 1 flight of stairs to get to the meetup once inside.

---

Our talk this week is "Growing Your Types Without Growing Your Workload, or How To Survive Among Productive Colleagues in Rust, or Defense Against the Dark Arts." by François Garillot.

## Abstract

Your library is munging data, perhaps even user-provided data, and while that currently presents itself in a half-dozen sorts, you know your startup is going to support a lot more in the next few months. You also have a couple of colleagues working on a new project, and you know they're going to want your library to add a lot of functionality to the API. Back from your object-oriented days, you remember you'd set up factories and visitors to get you out of a similar pickle, but now you're using Rust and feeling a bit lost. This talk is here to help! We'll see how this expression problem — designing types when data and its processing are each meant to evolve over time — is a known modularity issue in programming languages. We'll look at recognizing it, at the intuitive approaches in Rust, at the Rust design constraints, and run through an example to make trade-offs clear. After this talk, the audience should be familiar with the expression problem, know at least one way to approach it efficiently in Rust, and be better equipped to find and evaluate new approaches on this topic.

## Reading list

The email which introduced the expression problem, by Phil Wadler,
http://homepages.inf.ed.ac.uk/wadler/papers/expression/expression.txt

## Speaker bio

François Garillot is based in Montreal, where he works on Libra with Facebook. He received a Ph.D. from École Polytechnique in 2011, and worked on less popular programming languages, like Scala and Rust, for most of his career. His interests include type systems, leveraging programming languages to make things simpler to express, and a passion for roasted arabica.

Photo of Rust Montréal group
Rust Montréal
See more events
7755 Boul. Saint-Laurent
7755 Boul. Saint-Laurent · Montréal, QC