Vi presenterar parametrisk abstract syntax (PHOAS), en ny metod för att formalisera syntaxen för programmeringsspråk i datorsäkra assistenter baserade på typteori. Liksom högre ordningens abstrakta syntax (HOAS) använder PHOAS metaspråkets bindningskonstruktioner för att representera objektspråkets bindningskonstruktioner. Till skillnad från HOAS, är PHOAS typer definierbara i allmänna ändamål typ teorier som stöder traditionell funktionell programmering, som Coqs analys av induktiva konstruktioner. Vi går igenom hur Coq kan användas för att utveckla certifierade, körbara program transformationer över flera statiskt-typade funktionella programmeringsspråk formaliserade med PHOAS; d.v.s. varje transformation har ett maskinkontrollerat bevis på typbevarande och semantiskt bevarande. Våra exempel inkluderar CPS översättning och stängning konvertering för enkel-typade lambda kalkyl, CPS översättning för System F, och översättning från ett språk med ML-stil mönster matchning till ett enklare språk utan variabel-arity bindande konstruktioner. Genom att undvika syntaktiskt krångel i samband med första ordningens representationsteknik uppnår vi en mycket hög grad av korrekturautomation.
I REF införs parametriska HOAS (PHOAS) för att ge ett partiellt stöd för abstrakt högre ordningssyntax.
Parametric higher-order abstract syntax for mechanized semantics
{'venue': 'ICFP', 'journal': None, 'mag_field_of_study': ['Computer Science']}