University of Pennsylvania ScholarlyCommons Departmental Papers (CIS) Department of Computer & Information Science 9-2010 Species and Functors and Types, Oh My! Brent A. Yorgey University of Pennsylvania,
[email protected] Follow this and additional works at: https://repository.upenn.edu/cis_papers Part of the Discrete Mathematics and Combinatorics Commons, and the Programming Languages and Compilers Commons Recommended Citation Brent A. Yorgey, "Species and Functors and Types, Oh My!", . September 2010. This paper is posted at ScholarlyCommons. https://repository.upenn.edu/cis_papers/761 For more information, please contact
[email protected]. Species and Functors and Types, Oh My! Abstract The theory of combinatorial species, although invented as a purely mathematical formalism to unify much of combinatorics, can also serve as a powerful and expressive language for talking about data types. With potential applications to automatic test generation, generic programming, and language design, the theory deserves to be much better known in the functional programming community. This paper aims to teach the basic theory of combinatorial species using motivation and examples from the world of functional pro- gramming. It also introduces the species library, available on Hack- age, which is used to illustrate the concepts introduced and can serve as a platform for continued study and research. Keywords combinatorial species, algebraic data types Disciplines Discrete Mathematics and Combinatorics | Programming Languages and Compilers This conference paper is available at ScholarlyCommons: https://repository.upenn.edu/cis_papers/761 Species and Functors and Types, Oh My! Brent A. Yorgey University of Pennsylvania
[email protected] Abstract a certain size, or randomly generate family structures.