PEPM talks will be livestreamed on SIGPLAN’s YouTube channel.


The ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation (PEPM), which has a history going back to 1991 and has co-located with POPL every year since 2006, originates in the discoveries of practically useful automated techniques for evaluating programs with only partial input. Over the years, the scope of PEPM has expanded to include a variety of research areas centred around the theme of semantics-based program manipulation — the systematic exploitation of treating programs not only as subject to black-box execution, but also as data structures that can be generated, analysed, and transformed while establishing or maintaining important semantic properties.


In addition to the traditional PEPM topics (see below), PEPM 2022 welcomes submissions in new domains, in particular:

  • Semantics based and machine-learning based program synthesis and program optimisation.

  • Modelling, analysis, and transformation techniques for distributed and concurrent protocols and programs, such as session types, linear types, and contract specifications.

More generally, topics of interest for PEPM 2022 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.

  • 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.

  • 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.

  • 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, embedded and resource-limited computation, and security.

This list of categories is not exhaustive, and we encourage submissions describing new theories and applications related to semantics-based program manipulation in general. If you have a question as to whether a potential submission is within the scope of the workshop, please contact the programme co-chairs, Zena M. Ariola ( and Youyou Cong (

You're viewing the program in a time zone which is different from your device's time zone change time zone

Mon 17 Jan

Displayed time zone: Eastern Time (US & Canada) change

10:00 - 10:15
Welcome & AnnouncementPEPM at PEPM
Day opening
Welcome & AnnouncementRemote
Zena M. Ariola University of Oregon, Youyou Cong Tokyo Institute of Technology, Fritz Henglein Department of Computer Science, University of Copenhagen (DIKU) and Deon Digital
10:15 - 11:15
Keynote 1PEPM at PEPM
Chair(s): Sam Lindley The University of Edinburgh, UK
Why are partial evaluation and supercompilation still not widely used in practice? Reflections in light of Russian work on metacomputation.Remote
Andrei Klimov Keldysh Institute of Applied Mathematics of Russian Academy of Sciences
File Attached
11:35 - 12:35
Contributed Talks 1PEPM at PEPM
Chair(s): Antonina Nepeivoda Program Systems Institute of RAS, Russia
Partially Evaluating Symbolic Interpreters for AllRemote
Shangyin Tan Purdue University, Guannan Wei Purdue University, Tiark Rompf Purdue University
File Attached
Parallel Algebraic Effect HandlersRemote
Ningning Xie University of Toronto, Daniel D. Johnson Google Research, Dougal Maclaurin Google Research, Adam Paszke Google Research
File Attached
12:55 - 13:55
Keynote 2PEPM at PEPM
Chair(s): William J. Bowman University of British Columbia
From meta frameworks and transformations to distributed computing and moreRemote
Y. Annie Liu Stony Brook University
14:15 - 15:15
Keynote 3PEPM at PEPM
Chair(s): Keiko Nakata SAP Innovation Center Potsdam
Modal Logics and Types: Looking Back and Looking ForwardRemote
Frank Pfenning Carnegie Mellon University, USA

Tue 18 Jan

Displayed time zone: Eastern Time (US & Canada) change

04:00 - 05:00
Keynote 4PEPM at PEPM
Chair(s): Youyou Cong Tokyo Institute of Technology
On Type-Based Techniques for Program ManipulationRemote
Naoki Kobayashi University of Tokyo, Japan
05:20 - 06:35
Contributed Talks 2PEPM at PEPM
Chair(s): Jonathan Immanuel Brachthäuser University of Tübingen
Two-level Just-in-Time Compilation with One Interpreter and One EngineRemote
Yusuke Izawa Tokyo Institute of Technology, Hidehiko Masuhara Tokyo Institute of Technology, Carl Friedrich Bolz-Tereick Heinrich-Heine-Universität Düsseldorf
Pre-print Media Attached File Attached
let (rec) insertion without Effects, Lights or MagicRemote
Oleg Kiselyov Tohoku University, Japan, Jeremy Yallop University of Cambridge
06:55 - 07:55
Keynote 5PEPM at PEPM
Chair(s): Julia Lawall Inria
A partial history of partial evaluationRemote
Peter Sestoft IT University of Copenhagen
08:15 - 09:15
Contributed Talks 3PEPM at PEPM
Chair(s): Youyou Cong Tokyo Institute of Technology
Semi-Automatic Ladderisation: Improving Code Security through Rewriting and Dependent TypesRemote
Christopher Brown University of St. Andrews, UK, Adam D. Barwell Imperial College London, UK, Yoann Marquer INRIA, Rennes, France, Olivier Zendra INRIA, Rennes, France, Tania Richmond INRIA, Rennes, France then DGA - Maîtrise de l’Information, Chen Gu Hefei University of Technology, China
Link to publication
Dependent tagless finalRemote
Nicolas Biri Luxembourg Institute of Science and Technology
Link to publication

Call for Papers

Submission categories and guidelines

Two kinds of submissions will be accepted:

Regular Research Papers should describe new results, and will be judged on originality, correctness, significance, and clarity. Regular research papers must not exceed 12 pages.

Short Papers may include tool demonstrations and presentations of exciting if not fully polished research, and of interesting academic, industrial, and open-source applications that are new or unfamiliar. Short papers must not exceed 6 pages.

References and appendices are not included in page limits. Appendices may not be read by reviewers. Both kinds of submissions should be typeset using the two-column ‘sigplan’ sub-format of the new ‘acmart’ format available at:

and submitted electronically via HotCRP:

Reviewing will be single-blind.

Submissions are welcome from PC members (except the two co-chairs).

Accepted regular research papers will appear in formal proceedings published by ACM, and be included in the ACM Digital Library. Accepted short papers do not constitute formal publications and will not appear in the proceedings.

At least one author of each accepted contribution must attend the workshop virtually to present the work. In the case of tool demonstration papers, a live demonstration of the described tool is expected.

Important dates

  • Paper submission deadline : Thursday 7th October 2021 (AoE)
  • Author notification : Thursday 11th November 2021 (AoE)
  • Workshop : Monday 17th January 2022 to Tuesday 18th January 2022
  • Invited speakers : TBD

Best paper award

PEPM 2022 continues the tradition of a Best Paper award. The winner will be announced at the workshop.

PEPM 2022 will be run on the Airmeet platform. Here are some instructions for speakers, session chairs, and regular attendees.


  • Find the session by opening the “Schedule” tab.
  • When you are invited to the stage, share your screen by pressing the “Present to audience” button.
  • Use your desktop or laptop to give your talk. Airmeet does not work well on tablets (and sometimes on Safari).

Session Chairs

  • Find the session by opening the “Schedule” tab.
  • Check the speaker’s video and audio.
  • After the talk, open the Q&A tab (next to the chat) and read out the questions. A student volunteer will show the question on the stage.
  • If there are raised hands, let the student volunteer know who you would like to invite to the stage.

Regular Attendees

  • Open the Q&A tab and post your question if you would like the session chair to read it.
  • Raise your hand if you would like to directly ask a question. A student volunteer will bring you to the stage.