Call For Papers

ACM SIGPLAN 2014 Workshop on Partial Evaluation and Program Manipulation
ACM logo ACM logo
Mon-Tue, January 20-21, 2014
San Diego, California, USA
co-located with POPL'14

Sponsored by ACM SIGPLAN

The PEPM Symposium/Workshop series aims at bringing together researchers and practitioners working in the areas of program manipulation, partial evaluation, and program generation. PEPM focuses on techniques, theory, tools, and applications of analysis and manipulation of programs.

The 2014 PEPM workshop will be based on a broad interpretation of semantics-based program manipulation and continue last years' successful effort to expand the scope of PEPM significantly beyond the traditionally covered areas of partial evaluation and specialization and include practical applications of program transformations such as refactoring tools, and practical implementation techniques such as rule-based transformation systems. In addition, the scope of PEPM covers manipulation and transformations of program and system representations such as structural and semantic models that occur in the context of model-driven development. In order to reach out to practitioners, a separate category of tool demonstration papers will be solicited.

Topics of interest for PEPM'14 include, but are not limited to:

  • Program and model manipulation techniques such as: supercompilation, partial evaluation, fusion, on-the-fly program adaptation, active libraries, program inversion, slicing, symbolic execution, refactoring, decompilation, and obfuscation.

  • Program analysis techniques that are used to drive program/model manipulation such as: abstract interpretation, termination checking, binding-time analysis, constraint solving, type systems, automated testing and test case generation.

  • Techniques that treat programs/models as data objects including metaprogramming, generative programming, embedded domain-specific languages, program synthesis by sketching and inductive programming, staged computation, and model-driven program generation and transformation.

  • Application of the above techniques including case studies of program manipulation in real-world (industrial, open-source) projects and software development processes, descriptions of robust tools capable of effectively handling realistic applications, benchmarking. Examples of application domains include legacy program understanding and transformation, DSL implementations, visual languages and end-user programming, scientific computing, middleware frameworks and infrastructure needed for distributed and web-based applications, resource-limited computation, and security.

To maintain the dynamic and interactive nature of PEPM, we will continue the category of `short papers' for tool demonstrations and for presentations of exciting if not fully polished research, and of interesting academic, industrial and open-source applications that are new or unfamiliar.

Student attendants with accepted papers can apply for a SIGPLAN PAC grant to help cover travel expenses and other support. PAC also offers other support, such as for child-care expenses during the meeting or for travel costs for companions of SIGPLAN members with physical disabilities, as well as for travel from locations outside of North America and Europe. For details on the PAC programme, see its web page.

All accepted papers, short papers included, will appear in formal proceedings published by ACM Press. In addition to printed proceedings, accepted papers will be included in the ACM Digital Library. A special issue for Science of Computer Programming is planned with recommended papers from PEPM'14.

PEPM has also established a Best Paper award. The winner will be announced at the workshop.

Papers should be submitted electronically via the workshop web site.

Submission Categories and Guidelines

Authors are strongly encouraged to consult the advice for authoring research papers and tool papers before submitting. The PC Chairs welcome any inquiries about the authoring advice.

Regular Research Papers must not exceed 12 pages in ACM Proceedings style (including appendix). Tool demonstration papers and short papers must not exceed 6 pages in ACM Proceedings style (including appendix). At least one author of each accepted contribution must attend the workshop and present the work. In the case of tool demonstration papers, a live demonstration of the described tool is expected. Suggested topics, evaluation criteria, and writing guidelines for both research tool demonstration papers will be made available on the PEPM'14 Web-site. Papers should be submitted electronically via the workshop web site.

Authors using LaTeX to prepare their submissions should use the new improved SIGPLAN proceedings style (sigplanconf.cls, 9pt template).

Important Dates

  • Abstract due: Thu, October 10, 2013 (Extended)
  • Paper submission: Tue, October 15, 2013, 23:59, GMT (Extended)
  • Author notification: Mon, November 11, 2013
  • Camera-ready papers due: Tue, November, 19, 2013

Invited Speakers

We are delighted to have the following two invited speakers:

  • Michal Moskal (Microsoft Research, USA): Lessons from a Web-Based IDE and Runtime

    Abstract At Microsoft Research, we have built a purely web-based IDE called TouchDevelop that enables anyone to pick up a device and start programming. The IDE is geared towards touch based devices without keyboards, ranging from phones, over tablets, to large display screens. Programs can be edited and run on the device without an auxiliary PC. Transitioning between programming on one device, and continuing on another device is seamless. The web application also works offline.

    TouchDevelop has been successfully applied to teaching introductory programming classes at the high-school level and at some college level for non-CS majors. For researchers, TouchDevelop provides a green-field platform to explore IDE and programming language design, as well as runtime techniques and distributed data storage abstractions.

    In this talk, I will provide an overview of TouchDevelop from a language, IDE, and runtime perspective, while diving into some of the novel techniques enabled by our particular platform.

    (Due to some unforseen circumstance, Michal Moskal, a co-developer of TouchDevelop, will be giving this invited talk in place of Manuel Fahndrich.)

  • Sven-Bodo Scholz (Heriot-Watt University, UK): Partial Evaluation as Universal Compiler Tool (experiences from the SAC eco system)

    Abstract Compilation of high-level languages, be they domain-specific ones or general purpose ones, typically entails rather sophisticated program analyses to facilitate extensive program manipulations and target architecture-specific code generation. This talk shows how several of these techniques can benefit vastly from the use of partial evaluation techniques; it reflects some of the experiences gained in the context of the ecosystem of compiler tools around the programming language SAC (Single Assignment C).

    I describe how partial evaluation over the lifetime of the compiler development project has turned into a versatile tool that supports several aspects during the compilation, optimisation and code generation for SAC programs. At three concrete use scenarios in our toolchain: type inference, constraint resolution and application-specific code generation, I demonstrate the gains from partial evaluation. A discussion about limitations, further application potential and possible alternatives concludes the presentation.

Program Committee

Program Chairs

Program Committee Members

Steering Committee