[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/2517208acmconferencesBook PagePublication PagesgpceConference Proceedingsconference-collections
GPCE '13: Proceedings of the 12th international conference on Generative programming: concepts & experiences
ACM2013 Proceeding
Publisher:
  • Association for Computing Machinery
  • New York
  • NY
  • United States
Conference:
GPCE'13: Generative Programming: Concepts and Experiences Indianapolis Indiana USA October 27 - 28, 2013
ISBN:
978-1-4503-2373-4
Published:
27 October 2013
Sponsors:

Reflects downloads up to 09 Jan 2025Bibliometrics
Skip Abstract Section
Abstract

Welcome to the Twelfth International Conference on Generative Programming: Concepts & Experiences (GPCE'13). GPCE continues to provide the premiere 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. This year, GPCE is co-located with OOSPLA, the premier conference on object-oriented programming, with SLE, the conference on software language engineering, and with various other events under the SPLASH umbrella. GPCE participants are invited to visit other sessions on the same day and vice versa. This provides the attendees of all events with a comprehensive overview of current research at the intersection of programming languages and software engineering.

This volume contains the papers presented at the conference as well as the abstracts of the keynote presentations. GPCE'13 attracted 59 submissions with authors from 23 different countries. Each submission was reviewed by at least three members of the program committee. In 17 cases we reached out to external experts for an additional review. The submissions were discussed intensively during a week-long electronic program committee meeting. As a result of this meeting, 17 full research papers and 3 short research papers were selected for presentation at the conference, covering all topic areas of the call for papers, from domain-specific languages, to empirical results, and to program synthesis. The conference program also includes two keynote presentations shared with SLE, one by Don Batory titled "Dark Knowledge and Graph Grammars in Automated Software Design" and another by Ras Bodik titled "Solver-Aided Languages".

Skip Table Of Content Section
SESSION: Keynote address
keynote
Modeling biology with solver-aided programming languages

A good model of a biological cell exposes secrets of the cell's signaling mechanisms, explaining diseases and facilitating drug discovery. Modeling cells is fundamentally a programming problem - it's programming because the model is a concurrent program ...

SESSION: Extensible and domain-specific languages
research-article
A framework for extensible languages

Extensible programming languages such as SugarJ or Racket enable programmers to introduce customary language features as extensions of the base language. Traditionally, systems that support language extensions are either (i) agnostic to the base ...

research-article
Submodules in racket: you want it when, again?

In an extensible programming language, programmers write code that must run at different times - in particular, at compile time versus run time. The module system of the Racket programming language enables a programmer to reason about programs in the ...

research-article
Declarative visitors to ease fine-grained source code mining with full history on billions of AST nodes

Software repositories contain a vast wealth of information about software development. Mining these repositories has proven useful for detecting patterns in software development, testing hypotheses for new software engineering approaches, etc. ...

SESSION: Programming languages
research-article
Open pattern matching for C++

Pattern matching is an abstraction mechanism that can greatly simplify source code. We present functional-style pattern matching for C++ implemented as a library, called Mach71. All the patterns are user-definable, can be stored in variables, passed ...

research-article
Template constructors for reusable object initialization

Reuse of and abstraction over object initialization logic is not properly supported in mainstream object-oriented languages. This may result in significant amount of boilerplate code and proliferation of constructors in subclasses. It also makes it ...

research-article
Efficient high-level abstractions for web programming

Writing large Web applications is known to be difficult. One challenge comes from the fact that the application's logic is scattered into heterogeneous clients and servers, making it difficult to share code between both sides or to move code from one ...

research-article
Reified type parameters using Java annotations

Java generics are compiled by-erasure: all clients reuse the same bytecode, with uses of the unknown type erased. C++ templates are compiled by-expansion: each type-instantiation of a template produces a different code definition. The two approaches ...

SESSION: Product-line implementation
research-article
Does the discipline of preprocessor annotations matter?: a controlled experiment

The C preprocessor (CPP) is a simple and language-independent tool, widely used to implement variable software systems using conditional compilation (i.e., by including or excluding annotated code). Although CPP provides powerful means to express ...

research-article
Investigating preprocessor-based syntax errors

The C preprocessor is commonly used to implement variability in program families. Despite the widespread usage, some studies indicate that the C preprocessor makes variability implementation difficult and error-prone. However, we still lack studies to ...

research-article
Using document-oriented GUIs in dynamic software product lines

Dynamic Software Product Line (DSPL) Engineering has gained interest through its promise of being able to unify software adaptation whereby software adaptation can be realised at compile time and runtime. While previous work has enabled program logic ...

SESSION: Analysis
research-article
Family-based performance measurement

Most contemporary programs are customizable. They provide many features that give rise to millions of program variants. Determining which feature selection yields an optimal performance is challenging, because of the exponential number of variants. ...

research-article
ShadowVM: robust and comprehensive dynamic program analysis for the java platform

Dynamic analysis tools are often implemented using instrumentation, particularly on managed runtimes including the Java Virtual Machine (JVM). Performing instrumentation robustly is especially complex on such runtimes: existing frameworks offer limited ...

research-article
A comparison of product-based, feature-based, and family-based type checking

Analyzing software product lines is difficult, due to their inherent variability. In the past, several strategies for product-line analysis have been proposed, in particular, product-based, feature-based, and family-based strategies. Despite recent ...

SESSION: Staging and synthesis
research-article
Spiral in scala: towards the systematic construction of generators for performance libraries

Program generators for high performance libraries are an appealing solution to the recurring problem of porting and optimizing code with every new processor generation, but only few such generators exist to date. This is due to not only the difficulty ...

research-article
Scalaness/nesT: type specialized staged programming for sensor networks

Programming wireless embedded networks is challenging due to severe limitations on processing speed, memory, and bandwidth. Staged programming can help bridge the gap between high level code refinement techniques and efficient device level programs by ...

research-article
Forge: generating a high performance DSL implementation from a declarative specification

Domain-specific languages provide a promising path to automatically compile high-level code to parallel, heterogeneous, and distributed hardware. However, in practice high performance DSLs still require considerable software expertise to develop and ...

research-article
On the simplicity of synthesizing linked data structure operations

We argue that synthesizing operations on recursive linked data structures is not as hard as it appears and is, in fact, within reach of current SAT-based synthesis techniques - with the addition of a simple approach that we describe to decompose the ...

SESSION: Industrial applications
research-article
Generation of conjoint domain models for system-of-systems

Software solutions in complex environments, such as railway control systems or power plants, are assemblies of heterogeneous components, which are very large and complex systems themselves. Interplay of these systems requires a thorough design of a ...

research-article
Supporting large scale model transformation reuse

The growth of applications developed with the support of model transformations makes reuse a required practice, specially when applied to transformation assets (e.g. transformation chains, algorithms, and configuration files). In order to promote reuse ...

research-article
Model-driven generative framework for automated OMG DDS performance testing in the cloud

The Object Management Group's (OMG) Data Distribution Service (DDS) provides many configurable policies which determine end-to-end quality of service (QoS) of applications. It is challenging to predict the system's performance in terms of latencies, ...

Contributors
  • Texas A&M University
  • Carnegie Mellon University

Index Terms

  1. Proceedings of the 12th international conference on Generative programming: concepts & experiences
      Index terms have been assigned to the content through auto-classification.
      Please enable JavaScript to view thecomments powered by Disqus.

      Recommendations

      Acceptance Rates

      GPCE '13 Paper Acceptance Rate 20 of 59 submissions, 34%;
      Overall Acceptance Rate 56 of 180 submissions, 31%
      YearSubmittedAcceptedRate
      GPCE '13592034%
      GPCE '10591831%
      GPCE '09621829%
      Overall1805631%