Write a Blog >>
ICFP 2018
Sun 23 - Sat 29 September 2018 St. Louis, Missouri, United States

Videos are available online.

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.

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@inria.fr.

You're viewing the program in a time zone which is different from your device's time zone change time zone

Fri 28 Sep

Displayed time zone: Guadalajara, Mexico City, Monterrey change

10:20 - 12:00
Session 1ML at New York Central
10:20
25m
Talk
Safely Mixing OCaml and Rust
ML
Stephen Dolan University of Cambridge
10:45
25m
Talk
Rust Distilled: An Expressive Tower of Languages
ML
Aaron Weiss Northeastern University, Daniel Patterson Northeastern University, Amal Ahmed Northeastern University, USA
Link to publication Pre-print
11:10
25m
Talk
Generating Mutually Recursive Definitions
ML
Jeremy Yallop University of Cambridge, UK, Oleg Kiselyov
Pre-print
11:35
25m
Talk
Experience Report: Type-Safe Multi-Tier Programming with Standard ML Modules
ML
Martin Elsman University of Copenhagen, Denmark, Philip Munksgaard Intelligent Alpha AG, Switzerland, Ken Friis Larsen DIKU, University of Copenhagen
Link to publication
13:30 - 15:10
Session 2ML at New York Central
13:30
25m
Talk
ML as a Tactic Language, Again
ML
Guido Martínez CIFASIS-CONICET, Argentina, Danel Ahman University of Ljubljana, Victor Dumitrescu , Nick Giannarakis Princeton University, Chris Hawblitzel Microsoft Research, Cătălin Hriţcu Inria Paris, Monal Narasimhamurthy , Zoe Paraskevopoulou Princeton University, Clément Pit-Claudel MIT CSAIL, Jonathan Protzenko Microsoft Research, Redmond, Tahina Ramananandro Microsoft Research, n.n., Aseem Rastogi Microsoft Research, Nikhil Swamy Microsoft Research
File Attached
13:55
25m
Talk
Design and verification of functional proof checkers
ML
14:20
25m
Talk
Disornamentation
ML
14:45
25m
Talk
Generic Programming with Combinators and Objects
ML
15:30 - 16:10
Session 3ML at New York Central
15:30
40m
Talk
Programming with Abstract Algebraic Effects
ML
Dariusz Biernacki University of Wrocław, Maciej Piróg University of Wrocław, Piotr Polesiuk University of Wrocław, Filip Sieczkowski University of Wrocław

Call for presentations

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.

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@inria.fr.

Important dates

  • Thursday 31st May (any time zone): Abstract submission deadline
  • Thursday 28th June: Author notification
  • Friday 28th September 2018: ML Family Workshop

Format

The ML 2018 workshop will continue the informal approach followed since 2010. Presentations are selected by the program committee from submitted abstracts. There are no published proceedings, so contributions may be submitted for publication elsewhere.

Each presentation should take 20-25 minutes, except demos, which should take 10-15 minutes. The exact time will be decided based on the number of accepted submissions. The presentations will likely be recorded.

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

Scope

We seek research presentations on topics including (but not limited to):

  • Language design: abstraction, higher forms of polymorphism, concurrency, distribution and mobility, staging, extensions for semi-structured data, generic programming, object systems, etc.

  • Implementation: compilers, interpreters, type checkers, partial evaluators, runtime systems, garbage collectors, foreign function interfaces, etc.

  • Type systems: inference, effects, modules, contracts, specifications and assertions, dynamic typing, error reporting, etc.

  • Applications: case studies, experience reports, pearls, etc.

  • Environments: libraries, tools, editors, debuggers, cross-language interoperability, functional data structures, etc.

  • Semantics: operational and denotational semantics, program equivalence, parametricity, mechanization, etc.

Four kinds of submissions will be accepted: Research Presentations, Experience Reports, Demos, and Informed Positions.

  • Research Presentations: Research presentations should describe new ideas, experimental results, or significant advances in ML-related projects. We especially encourage presentations that describe work in progress, that outline a future research agenda, or that encourage lively discussion. These presentations should be structured in a way which can be, at least in part, of interest to (advanced) users.

  • Experience Reports: Users are invited to submit Experience Reports about their use of ML and related languages. These presentations do not need to contain original research but they should tell an interesting story to researchers or other advanced users, such as an innovative or unexpected use of advanced features or a description of the challenges they are facing or attempting to solve.

  • Demos: Live demonstrations or short tutorials should show new developments, interesting prototypes, or work in progress, in the form of tools, libraries, or applications built on or related to ML and related languages. (You will need to provide all the hardware and software required for your demo; the workshop organisers are only able to provide a projector.)

  • Informed Positions: A justified argument for or against a language feature. The argument must be substantiated, either theoretically (e.g. by a demonstration of (un)soundness, an inference algorithm, a complexity analysis), empirically or by substantial experience. Personal experience is accepted as justification so long as it is extensive and illustrated with concrete examples.

Post-proceedings

ML 2018 is an informal workshop without proceedings. We are planning to publish a post-proceedings and to invite interested authors of selected presentations to expand their abstracts for inclusion.

Coordination with the OCaml Users and Developers Workshop

The OCaml workshop is seen as more practical and is dedicated in significant part to OCaml community building and the development of the OCaml system. In contrast, the ML family workshop is not focused on any language in particular, is more research-oriented, and deals with general issues of ML-style programming and type systems. Yet there is an overlap, which we are keen to explore in various ways. The authors who feel their submission fits both workshops are encouraged to mention it at submission time or contact the program chairs.

Submission details

Submissions should be between one and three pages long, in PDF format, and printable on US Letter or A4 sized paper. A submission should have a short abstract and a body between 0 and 3 pages, in one- or two-column layout. The abstract should be suitable for inclusion in the workshop program. The bibliography will not be counted against the page limit. Appendices may be provided, but reviewers will only look at them if they are curious to; similarly, links to an extended presentation of the submitted work may be provided.

Submissions must be uploaded to the workshop submission website ( https://icfp-mlworkshop18.hotcrp.com/ ) before the submission deadline (Thursday 31st May).

Finally, please be aware that the submissions may be made public – in particular, accepted submissions may be made public on the conference website. Do not include confidential information in the submitted PDF.