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

GNU Guix is a “functional” package manager that borrows from earlier
work on Nix by Dolstra \textit{et al.}. Guix implements high-level
abstractions such as packages and operating system services as
domain-specific languages (DSL) embedded in Scheme, and it also
implements build actions and operating system orchestration in Scheme.
This leads to a multi-tier programming environment where embedded code
snippets are \emph{staged} for eventual execution.

In this paper we present \emph{G-expressions} or “\emph{gexps}”. We explain our
journey from traditional Lisp S-expressions to G-expressions, which
augment the former with contextual information, and we discuss the
implementation of gexps. We report on our experience using gexps in a
variety of operating system use cases—from package build processes
to system services. Gexps
provide a novel way to cover many aspects of OS configuration in a
single, multi-tier language while facilitating code reuse and code
sharing.

http://dl.acm.org/authorize?N47283
this URL might only work when visiting from a http://www.sigplan.org/ URL.

Mon 23 Oct

Displayed time zone: Tijuana, Baja California change

10:30 - 12:00
StagingGPCE 2017 at Regency A
Chair(s): Nada Amin University of Cambridge
10:30
25m
Talk
Refining Semantics for Multi-stage Programming
GPCE 2017
Rui Ge University of British Columbia, Canada, Ronald Garcia University of British Columbia, Canada
DOI Authorizer link
10:55
25m
Talk
Staging for Generic Programming in Space and Time
GPCE 2017
Georg Ofenbeck ETH Zurich, Switzerland, Tiark Rompf Purdue University, Markus Püschel ETH Zürich
DOI Authorizer link
11:20
25m
Talk
Staging with Control: Type-Safe Multi-stage Programming with Control Operators
GPCE 2017
Junpei Oishi University of Tsukuba, Japan, Yukiyoshi Kameyama University of Tsukuba, Japan
DOI Authorizer link
11:45
15m
Talk
Code Staging in GNU GuixShort paper
GPCE 2017
Ludovic Courtès Inria, France
DOI Authorizer link