Yesod web application dependencies

I have been experimenting with using Yesod to throw together a web application or two. My experience so far has been broadly positive—if you like computers to check things for you, I recommend it.1 That said, watching the full chain of dependencies fly past was moderately entertaining:2

parsec-3.1.2

An excellent parser-combinator library, widely imitated. This wouldn’t be funny, except…

attoparsec-0.10.1.0

Another excellent parser-combinator library, inspired by parsec.

base-unicode-symbols-0.2.2.3

This defines a bunch of Unicode aliases for standard functions with boring ASCII names. Why write:

x `elem` xs

when you could write:

x ∈ xs

Invaluable!

utf8-light-0.4.0.1 and utf8-string-0.3.7

Two UTF-8 encoding libraries!

semigroups-0.8

“In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative binary operation. A semigroup generalizes a monoid in that there might not exist an identity element. It also (originally) generalized a group (a monoid with all inverses) to a type where every element did not have to have an inverse, thus the name semigroup.”

  1. assuming you like deciphering compiler error messages when the computer says no, that is []
  2. for a quiet Wednesday morning… []