The first-class-patterns package
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 http://reinerp.wordpress.com/category/pattern-combinators/ 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.
Properties
| Versions | 0.1.0, 0.2.0, 0.3.0, 0.3.1 |
|---|---|
| Dependencies | base (≥4.5 & <5), transformers (≥0.1.0 & <0.4) |
| License | BSD3 |
| Author | Reiner Pope, Brent Yorgey |
| Maintainer | Brent Yorgey <byorgey@cis.upenn.edu> |
| Stability | experimental |
| Category | Data |
| Home page | https://github.com/reinerp/first-class-patterns |
| Bug tracker | https://github.com/reinerp/first-class-patterns/issues |
| Source repository | git clone git://github.com/reinerp/first-class-patterns.git |
| Upload date | Sun Mar 25 03:24:06 UTC 2012 |
| Uploaded by | ReinerPope |
| Built on | ghc-7.4 |
Modules
- Data
- Data.Pattern
- Data.Pattern.Base
- Data.Pattern.Base.Tuple
- Data.Pattern.Base.TypeList
- Data.Pattern.Common
- Data.Pattern.Base
- Data.Pattern
Downloads
- first-class-patterns-0.3.1.tar.gz (Cabal source package)
- package description (included in the package)