All News

Faculty Publication: Assistant Professor of Computer Science Richard A. Eisenberg

January 31, 2019

Type Variables in Patterns

Authors: Eisenberg, RA; Breitner, J; Jones, SP

Source: ACM SIGPLAN NOTICES, 53 (7):94-105; 10.1145/3242744.3242753 JUL 2018

Publication Type: Article

Abstract: For many years, GHC has implemented an extension to Haskell that allows type variables to be bound in type signatures and patterns, and to scope over terms. This extension was never properly specified. We rectify that oversight here. With the formal specification in hand, the otherwise-labyrinthine path toward a design for binding type variables in patterns becomes blindingly clear. We thus extend ScopedTypeVariables to bind type variables explicitly, obviating the Proxy workaround to the dustbin of history.

Department of Computer Science