The first-class-patterns package

[Tags: bsd3, library]

This package implements a library of first class patterns. The initial basis for this library was Morten Rhiger's "Type-safe pattern combinators"; the patterns can be used in an almost identical way to those of Morten Rhiger. In a series of blog posts at the types of patterns were made more revealing using type families, and a simpler implementation was used which avoids some book-keeping.

The library reimplements most of Haskell's built-in pattern matching facilities, plus some more. The pattern matches of this library are lightweight: when GHC's optimisation is turned on, all overhead should be optimised away, leaving a standard Haskell pattern match.

If you're just reading the documentation for this library for the first time, start with Data.Pattern.


Versions0.1.0, 0.2.0, 0.3.0, 0.3.1, 0.3.2,,
Change logNone available
Dependenciesbase (>=4.5 && <5), transformers (>=0.1.0 && <0.2.3) [details]
AuthorReiner Pope, Brent Yorgey
MaintainerBrent Yorgey <>
Home page
Bug tracker
Source repositoryhead: git clone git://
UploadedThu Mar 8 23:50:00 UTC 2012 by ReinerPope
Downloads1138 total (35 in last 30 days)
0 []
StatusDocs not available [build log]
All reported builds failed as of 2015-11-17 [all 5 reports]



Maintainers' corner

For package maintainers and hackage trustees