Monoids: Theme and Variations (Functional Pearl)

Loading...
Thumbnail Image
Penn collection
Departmental Papers (CIS)
Degree type
Discipline
Subject
monoid
homomorphism
monoid action
EDSL
Programming Languages and Compilers
Software Engineering
Theory and Algorithms
Funder
Grant number
License
Copyright date
Distributor
Related resources
Contributor
Abstract

The 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.

Advisor
Date of presentation
2012-07-01
Conference name
Departmental Papers (CIS)
Conference dates
2023-05-17T07:18:07.000
Conference location
Date Range for Data Collection (Start Date)
Date Range for Data Collection (End Date)
Digital Object Identifier
Series name and number
Volume number
Issue number
Publisher
Publisher DOI
Journal Issue
Comments
Recommended citation
Collection