HaskellImplementorsWorkshop/2016

From HaskellWiki
Jump to navigation Jump to search

The Haskell implementors' workshop is a forum for those involved in implementing Haskell systems, infrastructure, libraries and tools, generally for people involved in implementing Haskell technology, to share their work and discuss future directions and collaborations with others.

In 2016, the Haskell Implementors Workshop will be co-located with ICFP 2016 in Nara.

The workshop does not have proceedings. Talks and/or demos are proposed by submitting an abstract, and selected by a small program committee. The workshop will be informal and interactive, with a flexible timetable and plenty of room for ad-hoc discussion, demos, and impromptu short talks.

Traditionally, HIW is an open forum for people writing compilers, tools, or libraries, people with cool ideas for directions in which we should take the platform, proposals for new features to be implemented, and half-baked crazy ideas.

Links

Program Committee

  • Joachim Breitner (Karlsruhe Institut für Technologie)
  • Duncan Coutts (Well Typed)
  • Michael Snoyman (FP Complete)
  • Luite Stegeman (ghcjs)
  • Niki Vazou (UCSD)
  • Stephanie Weirich (University of Pennsylvania)
  • Edward Z. Yang - chair (Stanford University)

Schedule

Session 9:15-10:15 "The State of GHC"

  • 9:15 State of GHC (Simon Peyton Jones)
  • 9:45 Contributing to GHC (Ben Gamari)

Session 10:35-11:25 "Pluggability and Modularity"

  • 10:35 More powerful GHC Plugins (Moritz Angermann)
  • 11:00 Backpack to Work: Towards Backpack in Practice (Edward Z. Yang)

Session 11:45-12:35 "Types and Effects"

  • 11:45 A Dependent Haskell Triptych (Richard A. Eisenberg)
  • 12:10 Automatically Escaping Monads (Ben Lippmeier)

Session 14:00-14:50 "The Engineering of GHC"

  • 14:00 Pita: Tools for making GHC fast again (Ben Gamari)
  • 14:25 GHC Determinism (Bartosz Nitka)

Session 15:20-16:10 "Backends for GHC"

  • 15:20 Remote GHCi (Simon Marlow)
  • 15:45 GHCVM - A JVM Backend for GHC (Rahul Muttineni)

Session 16:40-18:00 "Trees and Lightning Talks"

  • 16:40 Trees That Grow (Shayan Najd, Simon Peyton Jones, Jacques Carette)
  • 17:05 Lightning Talks
    • Pre-accepted (10min):
      • Functional Lattice Crypto (Eric Crockett, Chris Peikert)
      • Inductive Tuples (Lennart Augustsson)
      • LLVM Bytecode (Moritz Angermann)

Program

Contributing to GHC (Ben Gamari)

GHC has seen a remarkable amount of change in the past five years. This can be seen both in the features that have been implemented, as well as structure of the community which implemented them. While our technical infrastructure has been adapting with the adoption of Phabricator, better automation, and improved continuous integration, the collaborative and social mechanisms which have served our developer community well in the past may be showing their age.

To remain sustainable, we need to ensure that the scale of GHC's developer community keeps up with growth in both the compiler itself and its user community. In this session we will discuss some of the sticking points in GHC's development process, especially with respect to on-boarding of new contributors and treatment of external proposals. We'll open with a short discussion of some of the measures that GHC HQ has been recently taking and then opening up the floor for general discussion of ways we can better support GHC developers.

More powerful GHC Plugins (Moritz Angermann)

GHC provides a plugin interface for writing type checker plugins and for some time also frontend plugins. The plugin interface, however could be much more powerful.

With the addition of a few new hooks, more powerful plugins can be build that can control the compilation pipeline and other parts of ghc.

This talk will outline what is currently possible, and what new hooks the author has in development, as well as issues arising from using the plugin interface.

Backpack to Work: Towards Backpack in Practice (Edward Z. Yang)

Under Construction

Session 11:45-12:35 "Types and Effects"

  • 11:45 A Dependent Haskell Triptych (Richard A. Eisenberg)
  • 12:10 Automatically Escaping Monads (Ben Lippmeier)

Session 14:00-14:50 "The Engineering of GHC"

  • 14:00 Pita: Tools for making GHC fast again (Ben Gamari)
  • 14:25 GHC Determinism (Bartosz Nitka)

Session 15:20-16:10 "Backends for GHC"

  • 15:20 Remote GHCi (Simon Marlow)
  • 15:45 GHCVM - A JVM Backend for GHC (Rahul Muttineni)

Session 16:40-18:00 "Trees and Lightning Talks"

  • 16:40 Trees That Grow (Shayan Najd, Simon Peyton Jones, Jacques Carette)

Important Dates

Tentative timeline:

  • June: Call for Talks
  • Monday, 8 August, 2016: Talk Proposal Deadline
  • Monday, 22 August, 2016 Notification
  • Saturday, September 24, 2016: Workshop