1 research outputs found
Dependent Type Systems as Macros
We present Turnstile+, a high-level, macros-based metaDSL for building
dependently typed languages. With it, programmers may rapidly prototype and
iterate on the design of new dependently typed features and extensions. Or they
may create entirely new DSLs whose dependent type "power" is tailored to a
specific domain. Our framework's support of language-oriented programming also
makes it suitable for experimenting with systems of interacting components,
e.g., a proof assistant and its companion DSLs. This paper explains the
implementation details of Turnstile+, as well as how it may be used to create a
wide-variety of dependently typed languages, from a lightweight one with
indexed types, to a full spectrum proof assistant, complete with a tactic
system and extensions for features like sized types and SMT interaction