An Entity Component System in Haskell
thesoftwaredevelopmentlifecycle.com