first-class-patterns: First class patterns and pattern matching, using type families
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.
[Skip to Readme]
|Versions [faq]||0.1.0, 0.2.0, 0.3.0, 0.3.1, 0.3.2, 0.3.2.1, 0.3.2.2, 0.3.2.3, 0.3.2.4, 0.3.2.5|
|Dependencies||base (>=18.104.22.168 && <5), transformers (>=0.1.0 && <0.6) [details]|
|Author||Reiner Pope, Brent Yorgey|
|Source repo||head: git clone git://github.com/kowainik/first-class-patterns.git|
|Uploaded||by shersh at Tue Oct 1 18:22:52 UTC 2019|
|Distributions||LTSHaskell:0.3.2.4, NixOS:0.3.2.5, Stackage:0.3.2.4|
|Downloads||5249 total (267 in the last 30 days)|
|Rating||2.0 (votes: 1) [estimated by Bayesian average]|
Docs available [build log]
Last success reported on 2019-10-01 [all 1 reports]
For package maintainers and hackage trustees