Meetings in Autumn 2007

From The Programming Languages and Systems Research Group
Jump to: navigation, search
Thursday, 06 December Neil Mitchell: "Detecting Pattern-Match Failures in Haskell"
12:15 -- 13:15, CS202J Abstract: This talk describes an automated analysis of Haskell 98 programs to check statically that, despite the possible use of partial (or non-exhaustive) pattern matching, no pattern-match failure can occur. For example, if head is applied to the empty list, then the program will fail.

The method used is an iterative backward analysis using a novel form of pattern-constraint to represent sets of data values. The analysis is defined for a core first-order language to which Haskell 98 programs are reduced. The resultant tool has been successfully applied to various Haskell programs, including XMonad and HsColour.