Main Talk: Modular Implicits

Modular implicits are a proposal to add support for ad-hoc polymorphism to OCaml. OCaml currently has no support for ad-hoc polymorphism. The classic example of this is OCaml’s separate addition operators for integers (+) and floating-point numbers (+.). Another example is the need for type-specific printing functions (print_int, print_string, etc.) rather than a single print function which works across multiple types. Taking inspiration from Scala’s implicits and “Modular Type Classes” by Dreyer et al., Modular implicits are a system for ad-hoc polymorphism based on using modules as type-directed implicit parameters. I'll describe the design of this system, show some simple running examples, and compare it to systems for ad-hoc polymorphism in other languages. Time allowing, I'll also discuss some of the work on multicore OCaml.



Speaker: Leo White is a former researcher at OCaml Labs in Cambridge University, who now works for Jane Street.



Lightning Talks: Please let me know if you want to give a 3 minute talk, by email or in person a few minutes before we start.



Food and venue kindly provided by our sponsor, Jane Street.



As always, we'll walk over to one of the bars on Stone Street after the talk.