This is a tutorial text giving an advanced introduction to the diagrammatic syntax of monoidal (and Cartesian) closed categories in the style of "functorial boxes". This syntax can be efficiently represented as a data structure which we call hierarchical hypergraphs, the systematic rewriting of which represents a way of deriving abstract machines for higher-order programming languages directly from their operational semantics. To arrive at this main intended application we pay attention in particular to the diagrammatic language of adjunctions and explicit strictifications. Finally, we present new proof techniques made possible by a quasi-canonical presentation of terms in monoidal closed categories called foliations which are useful in the case of complicated program transformations such as automatic differentiation and closure conversion.
翻译:暂无翻译