Yorgey, Brent A
Email Address
ORCID
Disciplines
Search Results
Now showing 1 - 2 of 2
Publication Species and Functors and Types, Oh My!(2010-09-01) Yorgey, Brent AThe 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.Publication Monoids: Theme and Variations (Functional Pearl)(2012-07-01) Yorgey, Brent AThe monoid is a humble algebraic structure, at first glance even downright boring. However, there’s much more to monoids than meets the eye. Using examples taken from the diagrams vector graphics framework as a case study, I demonstrate the power and beauty of monoids for library design. The paper begins with an extremely simple model of diagrams and proceeds through a series of incremental variations, all related somehow to the central theme of monoids. Along the way, I illustrate the power of compositional semantics; why you should also pay attention to the monoid’s even humbler cousin, the semigroup; monoid homomorphisms; and monoid actions.