Classes for the Maniacs: Demystifying SRTP

Thu 27th - 12:20 PM (Talk)

Statically Resolved Type Parameters, aka SRTP, is perhaps F#'s most misunderstood feature, yet at the core of some of its most ergonomic and powerful functionality. We will give hands-on examples showing that behind the abstruse syntax and seemingly daunting behaviors of SRTP lies a simple overloading mechanism, enabling everyday conveniences from boilerplate reduction to greater levels of type safety all the way to techniques that are often either thought impossible to encode in F# or unsatisfactorily simulated via other means, including type classes, higher-kinded types, and other topics of Haskell envy! Regardless of whether you've never used the "inline" keyword or if you're the sort that can't live without FsControl/FSharpPlus, there will be something for everyone.

About Mark Laws

Mark Laws

Mark Laws is currently at Unity, formerly Hex-Rays; likes types and concepts often considered "high level" but applied to low-level/high-performance work.