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]
Modules
[Index] [Quick Jump]
Downloads
- first-class-patterns-0.3.2.5.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 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 |
---|---|
Change log | CHANGELOG.md |
Dependencies | base (>=4.10.1.0 && <5), transformers (>=0.1.0 && <0.6) [details] |
Tested with | ghc ==8.2.2, ghc ==8.4.4, ghc ==8.6.5, ghc ==8.8.8 |
License | BSD-3-Clause |
Author | Reiner Pope, Brent Yorgey |
Maintainer | Kowainik <xrom.xkov@gmail.com> |
Category | Data, Pattern |
Home page | https://github.com/kowainik/first-class-patterns |
Bug tracker | https://github.com/kowainik/first-class-patterns/issues |
Source repo | head: git clone git://github.com/kowainik/first-class-patterns.git |
Uploaded | by shersh at 2019-10-01T18:22:52Z |
Distributions | |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Downloads | 8536 total (51 in the last 30 days) |
Rating | 2.25 (votes: 2) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Last success reported on 2019-10-01 [all 1 reports] |