Andrea Censi talk on designing everything together, co-design

functionality and resources as two input

a set of implementations

pick implementation that is feasible

boolean profunctor

pick implementation that maximizes functionality for a given resource, or minimizes resources for a given functionality

extra

monotone relation preserves order