GPCE 2018
Mon 5 - Tue 6 November 2018 Boston, Massachusetts, United States
co-located with SPLASH 2018

The ACM SIGPLAN International Conference on Generative Programming: Concepts & Experience (GPCE) is a venue for researchers and practitioners interested in techniques that use program generation, domain-specific languages, and component deployment to increase programmer productivity, improve software quality, and shorten the time-to-market of software products. In addition to exploring cutting-edge techniques of generative software, our goal is to foster further cross-fertilization between the software engineering and the programming languages research communities.

Generative and component approaches and domain-specific abstractions are revolutionizing software development just as automation and componentization revolutionized manufacturing. Raising the level of abstraction in software specification has been a fundamental goal of the computing community for several decades. Key technologies for automating program development and lifting the abstraction level closer to the problem domain are Generative Programming for program synthesis, Domain-Specific Languages (DSLs) for compact problem-oriented programming notations, and corresponding Implementation Technologies aiming at modularity, correctness, reuse, and evolution. As the field matures Applications and Empirical Results are of increasing importance.


Gold Sponsor

Gold Sponsor

Mon 5 Nov

08:30 - 10:00: GPCE 2018 - Keynote at Studio 2
gpce-2018154140300000008:30 - 10:00
10:30 - 12:00: GPCE 2018 - II at Studio 2
gpce-2018154141020000010:30 - 11:00
Karl SmeltzerOregon State University, Martin ErwigOregon State University
gpce-2018154141200000011:00 - 11:30
Nicolas StuckiEPFL, Switzerland, Aggelos BiboudisEPFL, Switzerland, Martin OderskyEPFL, Switzerland
gpce-2018154141380000011:30 - 12:00
Michael NiekeTU Braunschweig, Germany, Jacopo MauroUniversity of Southern Denmark, Christoph SeidlTechnische Universität Braunschweig, Thomas ThümTU Braunschweig, Germany, Ingrid Chieh YuUniversity of Oslo, Felix FranzkeTU Braunschweig
13:30 - 15:00: GPCE 2018 - III at Studio 2
gpce-2018154142100000013:30 - 14:00
Larissa SoaresUniversidade Federal da Bahia, Jens MeinickeMagdeburg University, Sarah NadiUniversity of Alberta, Christian KästnerCarnegie Mellon University, Eduardo AlmeidaUniversidade Federal da Bahia
gpce-2018154142280000014:00 - 14:30
Ebrahim KhalajWayne State University, Marwan Abi-AntounWayne State University
gpce-2018154142460000014:30 - 15:00
Nic VolanschiInria Bordeaux, Bernard SerpetteInria, Charles ConselUniversity of Bordeaux
15:30 - 17:00: GPCE 2018 - IV at Studio 2
gpce-2018154142820000015:30 - 16:00
Adilla SusungiMINES ParisTech, France, Norman A. RinkTU Dresden, Germany, Albert CohenInria, France / ENS, France, Jeronimo CastrillonTU Dresden, Germany, Claude TadonkiMINES ParisTech, France
gpce-2018154143000000016:00 - 16:30
Sven PeldszusUniversity of Koblenz-Landau, Daniel StrüberUniversity of Koblenz-Landau, Germany, Jan JürjensUniversity of Koblenz-Landau
gpce-2018154143180000016:30 - 17:00
Laurent ChristopheVUB, Coen De RooverVrije Universiteit Brussel, Elisa Gonzalez BoixVrije Universiteit Brussel, Wolfgang De MeuterVrije Universiteit Brussel

Tue 6 Nov

08:30 - 10:00: GPCE 2018 - SLE Keynote at Studio 2
10:30 - 12:00: GPCE 2018 - VI at Studio 2
gpce-2018154149660000010:30 - 11:00
Sebastian Ruland, Lars LuthmannTU Darmstadt, Real-time Systems Lab, Johannes BürdekTU Darmstadt, Real-time Systems Lab, Sascha LityTechnische Universität Braunschweig, Thomas ThümTU Braunschweig, Germany, Malte Lochau, Márcio RibeiroFederal University of Alagoas, Brazil
gpce-2018154149840000011:00 - 11:30
Weixin ZhangThe University of Hong Kong, Bruno C. d. S. OliveiraThe University of Hong Kong
gpce-2018154150020000011:30 - 12:00
Ahmad Salim Al-SibahiDepartment of Computer Science, University of Copenhagen (DIKU) & BilagScan, Thomas P. JensenINRIA Rennes, Aleksandar S. DimovskiIT University of Copenhagen, Denmark, Andrzej WąsowskiIT University of Copenhagen, Denmark
13:30 - 15:00: GPCE 2018 - VII at Studio 2
gpce-2018154150740000013:30 - 14:15
Jácome CunhaUniversity of Minho, Mihai DanOregon State University, Martin ErwigOregon State University, Danila FedorinOregon State University, Alex GrejucOregon State University
gpce-2018154151010000014:15 - 15:00
L. Thomas van BinsbergenRoyal Holloway University of London
15:30 - 17:00: GPCE 2018 - VIII at Studio 2
gpce-2018154151460000015:30 - 16:00
Yin LiuVirginia Tech, Kijin AnVirginia Tech, Eli TilevichVirginia Tech
gpce-2018154151640000016:00 - 16:30
William G HatchUniversity of Utah, Matthew FlattUniversity of Utah
gpce-2018154151820000016:30 - 17:00
Gabriel RadanneUniversity of Freiburg, Peter ThiemannUniversity of Freiburg

Call for Papers

The ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences is a programming languages conference focusing on techniques and tools for code generation, language implementation, and product-line development. GPCE seeks conceptual, theoretical, empirical, and technical contributions to its topics of interest, which include but are not limited to

  • program transformation, staging, macro systems, preprocessors, program synthesis, and code-recommendation systems,
  • domain-specific languages, language embedding, language design, and language workbenches,
  • feature-oriented programming, domain engineering, and feature interactions,
  • applications and properties of code generation, language implementation, and product-line development.

Authors are welcome to check with the PC chair whether their planned papers are in scope.

Paper selection

The GPCE program committee will evaluate each submission according to the following selection criteria:

  • Novelty. Papers must present new ideas or evidence and place them appropriately within the context established by previous research in the field.
  • Significance. The results in the paper must have the potential to add to the state of the art or practice in significant ways.
  • Evidence. The paper must present evidence supporting its claims. Examples of evidence include formalizations and proofs, implemented systems, experimental results, statistical analyses, and case studies.
  • Clarity. The paper must present its contributions and results clearly.

Paper categories

GPCE solicits three kinds of submissions.

  • Full Papers reporting original and unpublished results of research that contribute to scientific knowledge in any GPCE topic listed above. Full paper submissions must not exceed 12 pages excluding bibliography.

  • Short Papers presenting unconventional ideas or visions about any GPCE topic listed above. Short papers do not always require complete results as in the case of a full paper. In this way, authors can introduce new ideas to the community and get early feedback. Please note that short papers are not intended to be position statements. Short papers are included in the proceedings and will be presented at the conference. Short paper submissions must not exceed 6 pages excluding bibliography.

  • Tool Demonstrations presenting tools for any GPCE topic listed above. Tools must be available for use and must not be purely commercial. Submissions must provide a tool description not exceeding 6 pages excluding bibliography and a separate demonstration outline including screenshots also not exceeding 6 pages. Tool demonstrations must have the keywords “Tool Demo” or “Tool Demonstration” in their title. If the submission is accepted, the tool description will be published in the proceedings. The demonstration outline will only be used by the program committee for evaluating the submission.

Paper submission

All submissions must use the ACM SIGPLAN Conference Format “acmart”. Please be sure to use the latest LaTeX templates and class files. the sigplan sub-format, and 10 point font. Consult the sample-sigplan.tex template and use the document-class \documentclass[sigplan,anonymous,review]{acmart}.

To increase fairness in reviewing, a double-blind review process has become standard across SIGPLAN conferences. GPCE will follow a very lightweight model, where author identities are revealed to reviewers after submitting their initial reviews. Hence, the purpose is not to conceal author identities at all cost, but merely to provide reviewers with an unbiased first look at a submission. Author names and institutions should be omitted from submitted papers, and references to the authors’ own related work should be in the third person. No other changes are necessary, and authors will not be penalized if reviewers are able to infer their identities in implicit ways.

Papers must be submitted using HotCRP:

For additional information, clarification, or answers to questions please contact the program chair.

Authors take note

The official publication date is the date the proceedings are made available in the ACM Digital Library. Papers must describe work not currently submitted for publication elsewhere as described by the SIGPLAN Republication Policy. Authors should also be aware of the ACM Policy on Plagiarism.

Contributed Research Papers


How to Make Sparse Fast

Saman Amarasinghe


Achieving high performance is no easy task. When it comes to program operating on sparse data, where there is very little hardware, language or compiler support, getting high performance is nearly impossible. As important modern applications such as data analytics and simulations operate on sparse data, lack of performance is becoming a critical issue. Achieving high performance was so important from the early days of computing, many researchers have spent their lifetime trying to extract more FLOPS out of critical codes. Hardcore performance engineers try to get to this performance nirvana single handedly without any help from languages, compilers or tools. In this talk, using two examples, TACO and GraphIt, I’ll argue that domain specific languages and compiler technology can reduce most of the performance optimization burden even in a very difficult domain such as sparse computations.

TACO is an optimizing code generator for linear and tensor algebra. TACO introduces a new technique for compiling compound tensor algebra expressions into efficient loops. TACO-generated code has competitive performance to best-in-class hand-written codes for tensor and matrix operations.

GraphIt is a DSL and compiler for high-performance graph computing. GraphIt separates algorithm, schedule and physical data layout, providing the programmer with the ultimate control over optimization. GraphIt outperforms the state-of-the-art libraries and DLSs up to 2.4× on scale-free graphs and 4.7× on road graphs.


Saman P. Amarasinghe is a Professor and Associate Department Head in the Department of Electrical Engineering and Computer Science at Massachusetts Institute of Technology and a member of the Computer Science and Artificial Intelligence Laboratory (CSAIL) where he leads the Commit compiler group. Under Saman’s guidance, the Commit group developed the StreamIt, PetaBricks, StreamJIT, Halide, Simit, MILK and GraphIt programming languages and compilers, DynamoRIO dynamic instrumentation system, Superword level parallelism for SIMD vectorization, Program Shepherding to protect programs against external attacks, the OpenTuner extendable autotuner, and the Kendo deterministic execution system. He was the co-leader of the Raw architecture project. His research interests are in discovering novel approaches to improve the performance of modern computer systems without unduly increasing the complexity faced by the end users, application developers, compiler writers, or computer architects. Saman was the founder of Determina Corporation, which was acquired by VMware, and a co-founder of Lanka Internet Services Ltd. Saman received his BS in Electrical Engineering and Computer Science from Cornell University in 1988, and his MSEE and Ph.D from Stanford University in 1990 and 1997, respectively.