Mega-repo for my public Haskell projects.
Data structures & related utilities
q4c12-foldable-utils are some utility functions I can't live without.
q4c12-hlist has heterogeneous lists and sums.
q4c12-position is a type to represent points or contiguous ranges in text.
q4c12-twofinger is an efficient alternating sequence type.
q4c12-aeson-cabal is my locally canonical place for orphan instances of classes from
aesonfor types from
q4c12-defrost is like Stack's
pvp-boundsfeature, except it works on Cabal's freeze files instead. If you test your code against a set of freeze files,
defrostcan add the PVP bounds to your
.cabalfile corresponding to the dependency versions in those freeze files.
q4c12-xhtml2html converts from the XML syntax to the HTML syntax.
q4c12-xml-core is an opinionated XML parser/renderer that tries to stick to the spec where it's sensible and to drop things that aren't sensible.
q4c12-xml-desc uses q4c12-xml-core to build a RELAX NG schema generator. Write a parser, and get a renderer and schema for no extra effort!
q4c12-dhondt is a simulation of a d'Hondt proportional representation election.
q4c12-meta is local housekeeping. It generates the
.travis.ymlscript for CI and the various GHC-version-specific
cabal/, as well as tending to the freeze files. It's working well for me so far, so maybe I should try to turn it into a generally useful thing.
q4c12-prelude is that hippest thing, an alternative
Prelude. Its module is actually called
Prelude; use it with
base-noprelude, or with
mixins: base hiding (Prelude)alongside
It's not very comprehensive: I'm adding things as I find I need them.
q4c12-romnum is a Roman numeral generator.
The contents of this repository are dual-licensed under either the Apache license, version 2.0, or the GNU Lesser General Public License, version 2.1 or later, at the recepient's choice.