Higher-order, Typed, Inferred, Strict: ACM SIGPLAN ML Family Workshop

Submission page: https://icfp-mlworkshop18.hotcrp.com/

28 September 2018, Saint Louis (MO), USA

(Colocated with ICFP and the OCaml Users and Developers Workshop)

ML is a family of programming languages that includes Standard ML, OCaml, F#, CakeML, SML#, Manticore, MetaOCaml, JoCaml, Alice ML, Dependent ML, Flow Caml, and many others. All ML languages share several fundamental traits, besides a good deal of syntax. They are higher-order, strict, mostly pure, and typed, with algebraic and other data types. Their type systems are derived from Hindley-Milner. The development of these languages has inspired a significant body of computer science research and influenced the design of many other programming languages, including Haskell, Rust, and Scala.

ML workshops have been held in affiliation with ICFP continuously since 2005. This workshop specifically aims to recognise the entire extended ML family and to provide a forum for presenting and discussing common issues, both practical (compilation techniques, implementations of concurrency and parallelism, programming for the Web) and theoretical (fancy types, module systems, metaprogramming). The scope of the workshop includes all aspects of the design, semantics, theory, application, implementation, and teaching of the members of the ML family. We also encourage presentations from related languages (such as ATS, Eff, F*, Koka, Links, Rust, Scala, Swift, etc.), to exchange experience of further developing ML ideas.


09h00--10h00: ELPI: an extension language with binders and unification variables (Invited talk)

Enrico Tassi

10h20--10h45: Safely Mixing OCaml and Rust

(extended abstract)

Stephen Dolan

10h45--11h10: Rust Distilled: An Expressive Tower of Languages

(extended abstract, slides)

Aaron Weiss, Daniel Patterson, Amal Ahmed

11h10--11h35: Generating Mutually Recursive Definitions

(extended abstract)

Jeremy Yallop, Oleg Kiselyov

11h35--12h00: Experience Report: Type-Safe Multi-Tier Programming with Standard ML Modules

(extended abstract)

Martin Elsmann, Philip Munksgaard, Ken Friis Larsen

13h30--13h55: ML as a Tactic Language, Again

(extended abstract, slides)

Guido Martinez, "The F* team"

13h55--14h20: Design and verification of functional proof checkers

(extended abstract)

Roberto Blanco

14h20--14h45: Disornamentation

(extended abstract, slides)

Lucas Baudin, Didier Rémy

14h45--15h10: Generic Programming with Combinators and Objects

(extended abstract)

Dmitrii Kosarev, Dmitri Boulytchev

15h30--15h55: Programming with Abstract Algebraic Effects

(extended abstract)

Dariusz Biernacki, Maciej Piróg, Piotr Polesiuk, Filip Sieczkowski (speaking)


We expect research presentations of original and novel work, but emphasize that rigorous descriptions do not prevent preliminary or surprising work: we hope to encourage exciting (if unpolished) research and deliver a lively workshop atmosphere.

The ML family workshop will be held in close coordination with the OCaml Users and Developers Workshop.

If you have any question about the workshop, submission or participation, feel free to send them by email to the program chair, Gabriel Scherer gabriel.scherer@gmail.com.

Important dates

    • Wednesday June 6th (was: May 31st) (any time zone): Abstract submission deadline

    • Thursday 28th June: Author notification

    • Friday 28th September 2018: ML Family Workshop

Call for presentations

See the complete Call for Presentations (CFP).

Program committee

    • Zena Ariola, University of Oregon, US

    • Jacques Garrigue, Nagoya University, Japan

    • Troels Henriksen, University of Copenhagen, Denmark

    • Andrew Kennedy, Facebook, UK

    • Felix Klock, Mozilla, Germany

    • Ramana Kumar, DeepMind, UK

    • Guido Martinez, CIFASIS-CONICET, Argentina

    • Heather Miller, Northeastern University, US and EPFL, Switzerland

    • Gabriel Scherer, INRIA Saclay, France

    • Filip Sieczkowski, Wrocław University, Poland

    • Antonis Stampoulis, Originate Inc., US