ICFP 2023
Mon 4 - Sat 9 September 2023 Seattle, Washington, United States
Wed 6 Sep 2023 14:00 - 14:30 at A - Grand Ballroom 2 - Circuits and monoids Chair(s): Patrik Jansson

Vectors—or length-indexed lists—are classic example of a dependent type. Yet, most tutorials stay clear of any function on vectors whose definition requires non-trivial equalities between natural numbers to type check. This pearl shows how to write functions, such as vector reverse, that rely on monoidal equalities to be type correct without having to write any additional proofs. These techniques can be applied to many other functions over types indexed by a monoid, written using an accumulating parameter, and even be used to decide arbitrary equalities over monoids ‘for free.’

Wed 6 Sep

Displayed time zone: Pacific Time (US & Canada) change

13:30 - 14:30
Circuits and monoidsICFP Papers and Events at A - Grand Ballroom 2
Chair(s): Patrik Jansson Chalmers University of Technology
13:30
30m
Talk
Timely Computation
ICFP Papers and Events
Conal Elliott Independenet
DOI Pre-print
14:00
30m
Talk
A well-known representation of monoids and its application to the function ‘vector reverse’Functional PearlJFP PresentationRemote
ICFP Papers and Events
Wouter Swierstra Utrecht University, Netherlands
Link to publication DOI