haskell does not like type-agnostic libraries with strong polymorphism. why? because type checking gets... hard.