GPCE 2016
Mon 31 October - Tue 1 November 2016 Amsterdam, Netherlands
co-located with SPLASH 2016


UPDATE: Full Paper Submission Deadline Extended to Wednesday, June 29, 23:59 (Anywhere on Earth)!


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.

The International Conference on Generative Programming: Concepts & Experiences (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.

Call for Papers

Call for Papers
Get the PDF file for the call for papers!

Topics of Interest

GPCE seeks contributions on all topics related to generative software and its properties. As technology is maturing and sophisticated but increasingly complex applications and services are realized in a variety of application areas (e.g., Cloud Computing, Mobile Computing, Internet of Things, Cyber Physical Systems, Software Defined Networking, etc), this year, we are particularly looking for empirical evaluations in this context. Key topics include (but are certainly not limited too):

  1. Generative software
    • Domain-specific languages (language extension, language embedding, language design, language theory, language workbenches, interpreters, compilers)
    • Product lines (domain engineering, feature-oriented and aspect-oriented programming, preprocessors, feature interactions)
    • Metaprogramming (reflection, staging, partial evaluation)
    • Program synthesis
    • Implementation techniques and tool support (components, plug-ins, libraries, metaprogramming, macros, templates, generic programming, run-time code generation, model-driven development, composition tools, code-completion and code-recommendation systems)
  2. Practical applications and empirical evaluations
    • Empirical evaluations of all topics above (user studies, substantial case studies, controlled experiments, surveys, rigorous measurements)
    • Application areas and engineering practice (Cloud Computing, Mobile Computing, High Performance Computing, Internet of Things, Cyber Physical Systems, Software Defined Networking, Patterns and Middleware, Reactive Programming, Development methods, etc)
  3. Properties of generative software
    • Correctness of generators and generated code (analysis, testing, formal methods, domain-specific error messages, safety, security)
    • Reuse and evolution
    • Modularity, separation of concerns, understandability, and maintainability
    • Performance engineering, nonfunctional properties (program optimization and parallelization, GPGPUs, multicore, footprint, metrics)

We particularly welcome papers that address some of the key challenges in field, for example

  • Synthesizing code from declarative specifications
  • Supporting extensible languages and language embedding
  • Ensuring correctness and other nonfunctional properties of generated code; proving generators correct
  • Improving error reporting with domain-specific error messages
  • Reasoning about generators; handling variability-induced complexity in product lines
  • Providing efficient interpreters and execution languages
  • Human factors in developing and maintaining generators

Note on empirical evaluations: GPCE is committed to the empirical evaluation of generative software and use in practical applications. Publishing empirical papers at programming-language venues can be challenging. We understand the frustration of authors when, for example, reviews simply recommend repeating entire experiments with human subjects with slight deviations in execution. To alleviate such problems, we will recruit program committee experts who routinely work with empirical methods, and we will actively seek external reviews where appropriate. During submissions, authors can optionally indicate that a paper contains substantial empirical work, and we will endeavor to have the paper reviewed by experts familiar with the empirical research methods that are used in the paper. The program committee discussions will reflect on both technical contributions and research methods. For more context, see also Hints for Reviewing Empirical Work in Software Engineering.

Policy: Incremental improvements over previously published work should have been evaluated through systematic, comparative, empirical, or experimental evaluation. Submissions must adhere to SIGPLAN’s republication policy (http://www.sigplan.org). Please contact the program chair if you have any questions about how this policy applies to your paper (chairs@gpce.org).

Types of Submissions

GPCE distinguishes the following types of submissions:

Research Papers:

  • Full Papers reporting original and unpublished results of theoretical, empirical, conceptual, or experimental research that contribute to scientific knowledge in the areas listed below (the PC chair can advise on appropriateness). Full paper submissions are limited to 10 pages + 2 extra pages for references.

  • Short Papers The goal of short papers is to promote current work on research and practice. Short papers represent an early communication of research and 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, discuss ideas 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 with a smaller time slot at the conference. Short papers are limited to 4 pages + 1 extra page for references.

  • Tool demonstrations Tool demonstrations should present tools that implement generative techniques, and are available for use. Any of the GPCE topics of interest are appropriate areas for tool demonstrations, although purely commercial tool demonstrations will not be accepted. Submissions must provide a tool description of 4 pages in SIGPLAN proceedings style (see above), excluding 1 extra page for references and a demonstration outline including screenshots of up to 4 pages. Tool demonstrations must have the keywords “Tool Demo” or “Tool Demonstration” in the title. The 4-page tool description will, if the demonstration is accepted, be published in the proceedings. The 4-page demonstration outline will be used by the program committee only for evaluating the submission.

Tech talks: Depending on whether there is space in the program, GPCE may solicit Tech talks. See the GPCE’15 tech talks call for contributions for details. For now, if you are interested in presenting a Tech talk, please contact the chairs.

Workshops: Workshops will be organized by SPLASH. Please inform us and contact the SPLASH organizers if you would like to organize a workshop of interest to the GPCE audience.

When submitting your paper, make sure to indicate the category (research full, research short, tool demonstration paper)

More Information

For additional information, clarification, or answers to questions please contact the Program Chair.

Accepted Papers

Title

For fairness reasons, all submitted papers should conform to the formatting instructions. Submissions that violate these instructions may be rejected without review, at the discretion of the Program Chair.

Submission Site

Please take a moment to read the instructions below before using the submission site. When submitting your paper, make sure to indicate the category (research full, research short, tool demonstration paper). Note that camera ready versions will be collected by Conference Publishing Consulting.

Concurrent Submissions

Papers must describe unpublished work that is not currently submitted for publication elsewhere as described by SIGPLAN’s Republication Policy. Submitters should also be aware of ACM’s Policy and Procedures on Plagiarism.

Format

Submissions should use the ACM SIGPLAN Conference Format, 10 point font, using the font family Times New Roman. All submissions should be in PDF format. If you use LaTeX or Word, please use the provided ACM SIGPLAN Templates provided here. Otherwise, follow the author instructions.

Note that by default the SIGPLAN Conference Format templates produce papers in 9 point font. If you are formatting your paper using LaTeX, you will need to set the 10pt option in the \documentclass command. If you are formatting your paper using Word, you may wish to use the provided Word template that supports this font size. Please include page numbers in your submission. Setting the preprint option in the LaTeX \documentclass command generates page numbers. Please also ensure that your submission is legible when printed on a black and white printer. In particular, please check that colors remain distinct and font sizes are legible.

Page Limit

Full paper submissions are limited to 10 pages + 2 extra pages for references. Short papers and tool demonstrations are limited to 4 pages + 1 extra page for references.

Publication (Digital Library Early Access Warning)

AUTHORS TAKE NOTE: The official publication date is the date the proceedings are made available in the ACM Digital Library. This date may be up to two weeks prior to the first day of the conference. The official publication date affects the deadline for any patent filings related to published work.

Keynote

Tiark Rompf - Lightweight Modular Staging (LMS): Generate all the things!

Recent years have seen a surge of interest in staging and generative programming, driven by the increasing difficulty of making high-level code run fast on modern hardware. While the mechanics of program generation are relatively well understood, we have only begun to understand how to develop systems in a generative way. The Lightweight Modular Staging (LMS) platform forms the core of a research agenda to make generative programming more widely accessible, through powerful libraries and a growing selection of case studies that illuminate design patterns and crystallize best practices for high-level and effective generative programming. This talk will reflect on the foundations of LMS, on applications, achievements, challenges, as well as ongoing and future work.

Tiark Rompf is an assistant professor at Purdue University. His work focuses on runtime code generation, advanced compiler technology, and associated language support. From 2008 to 2014 he was a member of Martin Odersky’s Scala team at EPFL where he developed the LMS framework and made various contributions to the Scala language and toolchain (delimited continuations, efficient immutable data structures, compiler speedups, type system work). From 2012 to 2014 he was a researcher at Oracle Labs, applying LMS to JIT compilation and to query compilation in databases.

Papers

To be determined

Important Dates
Fri 16 Sep 2016
Camera ready deadline
Mon 31 Oct 09:00 - Tue 1 Nov 18:00 2016
Conference
Fri 26 Aug 2016
Notification
Wed 29 Jun 2016
Full Paper Submission (Extended!)
Fri 17 Jun 2016
Abstract Submission