GPCE 2017
Mon 23 - Tue 24 October 2017 Vancouver, Canada
co-located with SPLASH 2017
Mon 23 Oct 2017 11:20 - 11:45 at Regency A - Staging Chair(s): Nada Amin

Staging allows a programmer to write domain-specific, custom code generators. Ideally, a programming language for staging provides all necessary features for staging, and at the same time, gives static guarantee for the safety properties of generated code including well typedness and well scopedness. We address this classic problem for the language with control operators, which allow code optimizations in a modular and compact way. Specifically, we design a staged programming language with the expressive control operators shift0 and reset0, which let us express, for instance, multi-layer let-insertion, while keeping the static guarantee of well typedness and well scopedness. For this purpose, we extend our earlier work on refined environment classifiers which were introduced for the staging language with state. We show that our language is expressive enough to express interesting code generation techniques, and that the type system enjoys type soundness. We also mention a type inference algorithm for our language under reasonable restriction.
this URL might only work when visiting from a URL.

Mon 23 Oct
Times are displayed in time zone: (GMT-07:00) Tijuana, Baja California change

10:30 - 12:00: GPCE 2017 - Staging at Regency A
Chair(s): Nada AminUniversity of Cambridge
gpce-201710:30 - 10:55
Rui GeUniversity of British Columbia, Canada, Ronald GarciaUniversity of British Columbia, Canada
DOI Authorizer link
gpce-201710:55 - 11:20
Georg OfenbeckETH Zurich, Switzerland, Tiark RompfPurdue University, Markus PüschelETH Zürich
DOI Authorizer link
gpce-201711:20 - 11:45
Junpei OishiUniversity of Tsukuba, Japan, Yukiyoshi KameyamaUniversity of Tsukuba, Japan
DOI Authorizer link
gpce-201711:45 - 12:00
Ludovic CourtèsInria, France
DOI Authorizer link