Accidental Functional Programming in Rust (From an Epidemiologist's Perspective) by Dr. Caroline Morton
Lambda World 25
•
38m
I don't have a background in functional programming - and I never set out to write it. But somewhere between writing trait-based epidemiological pipelines, composing data transformations, and leaning hard on Result, enums, and pattern matching, I started hearing from others: “That's pretty functional.”
In this talk, I'll explore what it means to write “functional-ish” Rust as someone solving real-world scientific problems. I'll walk through the patterns I reach for - like chaining iterators, avoiding shared state, and embracing expressive types - and reflect on which functional programming ideas emerge naturally in Rust, even if you're not trying.
I'll also share how designing for epidemiologists - most of whom are used to chaining functions in Python (like Pandas) or R - has pushed me toward creating ergonomic Rust APIs with Python and R bindings. These tools aim to feel familiar to scientists while leveraging Rust's power and safety under the hood.
This is a talk for functional programmers curious about Rust, and for Rustaceans wondering if they've been functional all along. No formal theory required - just real code, real use cases, and a pragmatic perspective from someone building public health tools in Rust.
Up Next in Lambda World 25
-
When magic meets multicore - OCaml an...
"Merlin" is certainly a magician -- but it's also the backend for OCaml's language server. It allows OCamlers to get superb editor support, such as seeing OCaml's type inference, navigating to a definition, constructing or destructing sum type values, and much more. In a different vein, OCaml mul...
-
Aeon — An AI-native programming langu...
Program Synthesis is the dream of every developer. You specify what you want to write, and the computer writes the code for you. This specification can take several shapes: the signature (types) of a function, its documentation, or some input-ouput examples. Aeon is a programming language that su...
-
Pick a (Effect) Lane: A comparison of...
As the chatter over direct-style effects gains steam with Odersky publishing "Lean Scala" manifesto and speaking in multiple conferences about it, I dipped my toes into direct-style scala, and will present, without any bias, a comparison of both effect systems & direct-style in multiple angles. I...