Awodey, S. (2006) Category Theory. Oxford Logic Guides, vol. 49. Oxford: Oxford University Press.
Johann, P. & Ghani, N. (2007) Initial algebra semantics is enough! Typed Lambda Calculi and Applications. Lecture Notes in Computer Science, vol. 4583. Springer.
Johann, P. & Ghani, N. (2008) Foundations for structured programming with GADTs. In Conference record of the ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. San Francisco, California, pp. 297–308.
Liang, S., Hudak, P. & Jones, M. (1995) Monad transformers and modular interpreters. In Conference record of the ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. San Francisco, California, pp. 333–343.
Löh, A. & Hinze, R. (2006) Open data types and open functions. Princ. Prac. Declarative Program. Proceedings of the 8th ACM SIGPLAN Symposium on Principles and Practice of Declarative Programming. Venice, Italy, pp. 133–144.
Lüth, C. & Ghani, N. (2002) Composing monads using coproducts. In Proceedings of the ACM SIGPLAN International Conference on Functional Programming. Pittsburgh, PA, pp. 133–144.
Meijer, E., Fokkinga, M. & Paterson, R. (1991) Functional programming with bananas, lenses, envelopes and barbed wire. In Proceedings ACM Conference on Functional Programming Languages and Computer Architecture.
Sheard, T. (2001) Generic unification via two-level types and parameterized modules. In Proceedings of the ACM SIGPLAN International Conference on Functional Programming. Florence, Italy, pp. 86–97.
Swierstra, W. & Altenkirch, T. (2007) Beauty in the beast: A functional semantics of the awkward squad. In Proceedings of the ACM SIGPLAN Haskell Workshop. Freiburg, Germany, pp. 25–36.