explicit substitutions and higher-order syntax
Recently there has been a great deal of interest in higher-order syntax which seeks to extend standard initial algebra semantics to cover languages with variable binding by using functor categories. The canonical example studied in the literature is that of the untyped ?-calculus which is handled as an instance of the general theory of binding algebras, cf. Fiore, Plotkin, Turi [8]. Another important syntactic construction is that of explicit substitutions. The syntax of a language with explicit substitutions does not form a binding algebra as an explicit substitution may bind an arbitrary number of variables. Nevertheless we show that the language given by a standard signature ? and explicit substitutions is naturally modelled as the initial algebra of the endofunctor Id + F ? o - + - o - on a functor category. We also comment on the apparent lack of modularity in syntax with variable binding as compared to first-order languages.
explicit substitutions algebras variable binding monads abstract syntax