Research Papers‹Programming› 2021
The International Conference on the Art, Science, and Engineering of Programming is a new conference focused on programming topics including the experience of programming. We have named it ‹Programming› for short.
‹Programming› seeks for papers that advance knowledge of programming on any relevant topic, including programming practice and experience.
In order to present at ‹Programming› 2021, papers must be submitted to the first, second or third issue of Volume 5 of the ‹Programming› journal (see details of the timeline).
This program is tentative and subject to change.
Wed 24 Mar Times are displayed in time zone: Greenwich Mean Time : Belfast change
14:00 - 14:30 Talk | Transparent Synchronous Dataflow Research Papers Steven CheungUniversity of Birmingham, UK, Dan GhicaUniversity of Birmingham, Koko MuroyaRIMS, Kyoto University, JP DOI |
14:00 - 14:30 Talk | Lightweight Lexical Test Prioritization for Immediate Feedback Research Papers Toni MattisHasso Plattner Institute, University of Potsdam, Robert HirschfeldHasso Plattner Institute (HPI), University of Potsdam, Germany DOI |
15:00 - 15:30 Talk | Using Relational Problems to Teach Property-Based Testing Research Papers John WrennBrown University, Tim NelsonBrown University, Shriram KrishnamurthiBrown University, United States DOI | ||
15:30 - 16:00 Talk | Bacatá: Notebooks for DSLs, Almost for Free Research Papers Mauricio Verano MerinoTechnische Universiteit Eindhoven, Jurgen VinjuCWI, Netherlands, Tijs van der StormCWI & University of Groningen, Netherlands DOI | ||
16:00 - 16:30 Talk | Reusing Static Analysis across Different Domain-Specific Languages using Reference Attribute Grammars Research Papers Johannes MeyTechnische Universität Dresden, Thomas KühnKarlsruhe Institute of Technology, René SchöneTechnische Universität Dresden, Uwe AßmannTU Dresden, Germany DOI |
15:00 - 15:30 Talk | Path-Sensitive Atomic Commit: Local Coordination Avoidance for Distributed Transactions Research Papers Tim SoethoutING Bank and Centrum Wiskunde & Informatica (CWI), Tijs van der StormCWI & University of Groningen, Netherlands, Jurgen VinjuCWI, Netherlands DOI | ||
15:30 - 16:00 Talk | Interactive Music and Synchronous Reactive Programming Research Papers DOI | ||
16:00 - 16:30 Talk | Programming Paradigms, Turing Completeness and Computational Thinking Research Papers Greg MichaelsonHeriot-Watt University DOI |
17:30 - 18:00 Talk | Did JHotDraw Respect the Law of Good Style?: A deep dive into the nature of false positives of bad code smells Research Papers Daniel SpeicherBonn-Aachen International Center for Information Technology, B-IT DOI | ||
18:00 - 18:30 Talk | Advanced Join Patterns for the Actor Model based on CEP Techniques Research Papers Humberto Rodriguez AvilaVrije Universiteit Brussel, Joeri De KosterVrije Universiteit Brussel, Belgium, Wolfgang De MeuterVrije Universiteit Brussel DOI | ||
18:30 - 19:00 Talk | Finding Bugs with Specification-Based Testing is Easy! Research Papers DOI |
17:30 - 18:00 Talk | Constructing Hybrid Incremental Compilers for Cross-Module Extensibility with an Internal Build System Research Papers Jeff SmitsDelft University of Technology, Netherlands, Gabriël KonatDelft University of Technology, Eelco VisserDelft University of Technology DOI | ||
18:00 - 18:30 Talk | Robust Contract Evolution in a TypeSafe MicroServices Architecture Research Papers João Costa SecoNOVA LINCS -- Universidade Nova de Lisboa, Paulo FerreiraOutSystems SA, Hugo LourençoOutSystems SA, Carla FerreiraUniversidade Nova Lisboa, Lucio FerraoOutSystems DOI | ||
18:30 - 19:00 Talk | Functional Programming in Pattern-Match-Oriented Programming Style Research Papers Satoshi EgiRakuten Institute of Technology, Rakuten, Inc. / The University of Tokyo, Yuichi NishiwakiThe University of Tokyo DOI |
Thu 25 Mar Times are displayed in time zone: Greenwich Mean Time : Belfast change
13:00 - 13:30 Talk | Transparent Synchronous Dataflow Research Papers Steven CheungUniversity of Birmingham, UK, Dan GhicaUniversity of Birmingham, Koko MuroyaRIMS, Kyoto University, JP DOI | ||
13:30 - 14:00 Talk | Consistency types for replicated data in a higher-order distributed programming language Research Papers DOI | ||
14:00 - 14:30 Talk | Jupyter Notebooks on GitHub: Characteristics and Code Clones Research Papers DOI |
13:00 - 13:30 Talk | Sub-method, partial behavioral reflection with Reflectivity: Looking back on 10 years of use Research Papers Steven Costiou INRIA Lille, Vincent AranegaUniversité Lille, CNRS, Centrale Lille, Inria, UMR 9189 - CRIStAL, Marcus Denker INRIA Lille DOI | ||
13:30 - 14:00 Talk | Reference Capabilities for Safe Parallel Array Programming Research Papers Beatrice ÅkerblomStockholm University, Elias CastegrenKTH, Tobias WrigstadUppsala University, Sweden DOI | ||
14:00 - 14:30 Talk | ReactiFi: Reactive Programming of Wi-Fi Firmware on Mobile Devices Research Papers Artur Sterz, Matthias Eichholz, Ragnar MogkTechnische Universität Darmstadt, Lars BaumgärtnerPhilipps-Universität Marburg, Pablo Graubner, Matthias Hollick, Mira MeziniTU Darmstadt, Germany, Bernd FreislebenPhilipps-Universität Marburg DOI |
15:00 - 15:30 Talk | Bacatá: Notebooks for DSLs, Almost for Free Research Papers Mauricio Verano MerinoTechnische Universiteit Eindhoven, Jurgen VinjuCWI, Netherlands, Tijs van der StormCWI & University of Groningen, Netherlands DOI | ||
15:30 - 16:00 Talk | Prioritising Server Bugs via Inter-process Concolic Testing Research Papers Maarten VandercammenVrije Universiteit Brussel, Laurent ChristopheVUB, Dario Di NucciTilburg University, Wolfgang De MeuterVrije Universiteit Brussel, Coen De RooverVrije Universiteit Brussel DOI | ||
16:00 - 16:30 Talk | Path-Sensitive Atomic Commit: Local Coordination Avoidance for Distributed Transactions Research Papers Tim SoethoutING Bank and Centrum Wiskunde & Informatica (CWI), Tijs van der StormCWI & University of Groningen, Netherlands, Jurgen VinjuCWI, Netherlands DOI |
15:00 - 15:30 Talk | Constructing Hybrid Incremental Compilers for Cross-Module Extensibility with an Internal Build System Research Papers Jeff SmitsDelft University of Technology, Netherlands, Gabriël KonatDelft University of Technology, Eelco VisserDelft University of Technology DOI | ||
15:30 - 16:00 Talk | Robust Contract Evolution in a TypeSafe MicroServices Architecture Research Papers João Costa SecoNOVA LINCS -- Universidade Nova de Lisboa, Paulo FerreiraOutSystems SA, Hugo LourençoOutSystems SA, Carla FerreiraUniversidade Nova Lisboa, Lucio FerraoOutSystems DOI | ||
16:00 - 16:30 Talk | Lightweight Lexical Test Prioritization for Immediate Feedback Research Papers Toni MattisHasso Plattner Institute, University of Potsdam, Robert HirschfeldHasso Plattner Institute (HPI), University of Potsdam, Germany DOI |
15:00 - 15:30 Talk | Functional Programming in Pattern-Match-Oriented Programming Style Research Papers Satoshi EgiRakuten Institute of Technology, Rakuten, Inc. / The University of Tokyo, Yuichi NishiwakiThe University of Tokyo DOI | ||
15:30 - 16:00 Talk | Lake symbols for island parsing Research Papers DOI | ||
16:00 - 16:30 Talk | Programming Paradigms, Turing Completeness and Computational Thinking Research Papers Greg MichaelsonHeriot-Watt University DOI |
17:30 - 18:00 Talk | Reusing Static Analysis across Different Domain-Specific Languages using Reference Attribute Grammars Research Papers Johannes MeyTechnische Universität Dresden, Thomas KühnKarlsruhe Institute of Technology, René SchöneTechnische Universität Dresden, Uwe AßmannTU Dresden, Germany DOI | ||
18:00 - 18:30 Talk | Finding Bugs with Specification-Based Testing is Easy! Research Papers DOI |
17:30 - 18:00 Talk | Interactive Music and Synchronous Reactive Programming Research Papers DOI | ||
18:00 - 18:30 Talk | Capturing High-level Nondeterminism in Concurrent Programs for Practical Concurrency Model Agnostic Record & Replay Research Papers Dominik AumayrJohannes Kepler University Linz, Austria, Stefan MarrUniversity of Kent, Sophie KalebaUniversity of Kent, Elisa Gonzalez BoixVrije Universiteit Brussel, Belgium, Hanspeter MössenböckJKU Linz, Austria DOI | ||
18:30 - 19:00 Talk | Transparent Compiler and Runtime Specializations for Accelerating Managed Languages on FPGAs Research Papers Michail PapadimitriouUniversity of Manchester, UK, Juan FumeroUniversity of Manchester, UK, Athanasios StratikopoulosThe University of Manchester, Foivos S. ZakkakRed Hat, Inc., Christos KotselidisKTM Innovation / The University of Manchester DOI |
Fri 26 Mar Times are displayed in time zone: Greenwich Mean Time : Belfast change
13:30 - 14:00 Talk | Advanced Join Patterns for the Actor Model based on CEP Techniques Research Papers Humberto Rodriguez AvilaVrije Universiteit Brussel, Joeri De KosterVrije Universiteit Brussel, Belgium, Wolfgang De MeuterVrije Universiteit Brussel DOI | ||
14:00 - 14:30 Talk | Consistency types for replicated data in a higher-order distributed programming language Research Papers DOI |
13:30 - 14:00 Talk | Transparent Compiler and Runtime Specializations for Accelerating Managed Languages on FPGAs Research Papers Michail PapadimitriouUniversity of Manchester, UK, Juan FumeroUniversity of Manchester, UK, Athanasios StratikopoulosThe University of Manchester, Foivos S. ZakkakRed Hat, Inc., Christos KotselidisKTM Innovation / The University of Manchester DOI | ||
14:00 - 14:30 Talk | Sub-method, partial behavioral reflection with Reflectivity: Looking back on 10 years of use Research Papers Steven Costiou INRIA Lille, Vincent AranegaUniversité Lille, CNRS, Centrale Lille, Inria, UMR 9189 - CRIStAL, Marcus Denker INRIA Lille DOI |
15:00 - 15:30 Talk | Using Relational Problems to Teach Property-Based Testing Research Papers John WrennBrown University, Tim NelsonBrown University, Shriram KrishnamurthiBrown University, United States DOI | ||
15:30 - 16:00 Talk | Reference Capabilities for Safe Parallel Array Programming Research Papers Beatrice ÅkerblomStockholm University, Elias CastegrenKTH, Tobias WrigstadUppsala University, Sweden DOI | ||
16:00 - 16:30 Talk | Lake symbols for island parsing Research Papers DOI |
15:00 - 15:30 Talk | Capturing High-level Nondeterminism in Concurrent Programs for Practical Concurrency Model Agnostic Record & Replay Research Papers Dominik AumayrJohannes Kepler University Linz, Austria, Stefan MarrUniversity of Kent, Sophie KalebaUniversity of Kent, Elisa Gonzalez BoixVrije Universiteit Brussel, Belgium, Hanspeter MössenböckJKU Linz, Austria DOI | ||
15:30 - 16:00 Talk | Prioritising Server Bugs via Inter-process Concolic Testing Research Papers Maarten VandercammenVrije Universiteit Brussel, Laurent ChristopheVUB, Dario Di NucciTilburg University, Wolfgang De MeuterVrije Universiteit Brussel, Coen De RooverVrije Universiteit Brussel DOI | ||
16:00 - 16:30 Talk | ReactiFi: Reactive Programming of Wi-Fi Firmware on Mobile Devices Research Papers Artur Sterz, Matthias Eichholz, Ragnar MogkTechnische Universität Darmstadt, Lars BaumgärtnerPhilipps-Universität Marburg, Pablo Graubner, Matthias Hollick, Mira MeziniTU Darmstadt, Germany, Bernd FreislebenPhilipps-Universität Marburg DOI |
17:00 - 17:30 Talk | Jupyter Notebooks on GitHub: Characteristics and Code Clones Research Papers DOI |
17:00 - 17:30 Talk | Did JHotDraw Respect the Law of Good Style?: A deep dive into the nature of false positives of bad code smells Research Papers Daniel SpeicherBonn-Aachen International Center for Information Technology, B-IT DOI |
Not scheduled yet
Call for Papers
Scope
The Art, Science, and Engineering of Programming accepts papers that advance knowledge of programming. Almost anything about programming is in scope, but in each case there should be a clear relevance to the act and experience of programming. Additionally, papers must be written in a scholarly form. Scholarly works are those that describe ideas in the context of other ideas that are already known, so to contribute to the systematic and long-standing chaining of knowledge. Papers that fail to properly contextualize the work will not be considered.
We accept descriptions of work under different perspectives:
-
Art: knowledge and technical skills acquired through practice and personal experiences. Examples include libraries, frameworks, languages, APIs, programming models and styles, programming pearls, and essays about programming.
-
Science (Theoretical): knowledge and technical skills acquired through mathematical formalisms. Examples include formal programming models and proofs.
-
Science (Empirical): knowledge and technical skills acquired through experiments and systematic observations. Examples include user studies and programming-related data mining.
-
Engineering: knowledge and technical skills acquired through designing and building large systems and through calculated application of principles in building those systems. Examples include measurements of artifacts’ properties, development processes and tools, and quality assurance methods.
Independent of the type of work, the journal accepts submissions covering several areas of expertise, including but not limited to:
- General-purpose programming
- Distributed systems programming
- Parallel and multi-core programming
- Graphics and GPU programming
- Security programming
- User interface programming
- Database programming
- Visual and live programming
- Data mining and machine learning programming, and for programming
- Interpreters, virtual machines, and compilers
- Modularity and separation of concerns
- Model-based development
- Metaprogramming and reflection
- Testing and debugging
- Program verification
- Programming education
- Programming environments
- Social coding
Upon submission, authors are requested to state what type of paper they are submitting and what areas of expertise are covered by the paper. These two classifications, combined, are used to select reviewers and to apply suitable assessment criteria for the papers. They are not used beyond that purpose. Misclassification by the authors may lead to negative assessments from reviewers.
Paper Selection
The following criteria are used when evaluating submitted papers:
- Novelty and Importance: The paper presents new insights or results, and contributes significantly to the advancement, analysis, or synthesis of knowledge in the field.
- Scholarship and Clarity: The paper places its ideas and results appropriately and clearly within the context established by previous research in the field.
More specific criteria for assessing papers depends on the type of the paper:
- Papers submitted as “The Art” should include a very solid contextualization of the work, and, when applicable, they should include the artifacts themselves.
- Papers submitted as “Science” should describe the methods or formalisms in detail, as well as any data and scripts used to analyze it.
- Papers submitted as “Engineering” should present the methods in detail, unveil results that are clearly better than some accepted baseline, and include the artifacts used to reach the conclusions.
Artifacts are recommended, but not required, for the initial submission. Depending on the papers, reviewers may take the existence of artifacts as a positive signal about the work. Also depending on the papers, artifacts may be required as a condition for publication.
Reviewing and Selection Process
There are two rounds of review. The first round assesses the papers according to the quality criteria stated above, and results in the selection of a subset of submissions that are either accepted as-is or are deemed potentially acceptable. All other papers are rejected. Authors of potentially acceptable papers are requested to improve specific aspects of the research and the paper. Authors are given a specified period of time to perform the revisions and re-submit the paper. During the second and final reviewing round, the same reviewers assess how well the revision requests have been addressed by the authors, and whether the final paper maintains or improves the level of contribution of the original submission. Revisions that significantly lessen the contribution of the work or that fail to adequately address the reviewers’ original concerns will result in the paper’s rejection.
Papers rejected in either the first or second phases may be resubmitted one more time to the journal. The resubmission will be treated as a new submission, and the paper may be assigned to new reviewers. After a second rejection, subsequent submissions of the same paper will be desk-rejected.
Presented Papers
Information for Authors
Submission
Use the the online submission system at EasyChair.
Typesetting
Submissions must use the LaTeX template of the journal. Please download the template package; a manual is included.
The template is also available in Overleaf.
Language and Page Limits
Papers must be written in English using high standards of writing. Papers that show poor mastery of the English language will be rejected without review.
The main part of the paper should not exceed 22 pages (in the provided style), but there is no limit for bibliography and appendices. The page limit for the main part of the paper is in place in order to keep the paper on focus and to avoid overloading the reviewers. Authors are encouraged to move important details to appendices, which may be consulted by the reviewers. In some cases, if authors feel that the main part requires substantially more pages, they should explain the reasons why in the additional comments field of the submission form; examples of these cases may include papers with substantial source code listings, and essays. Papers whose length is incommensurate with their contribution will be rejected.
The submission is required to contain an ACM subject classification.
Abstract
Each submission must be accompanied by a plain-language abstract of up to 500 words that presents the key points in the paper in a manner understandable by experienced practitioners and researchers in nearby disciplines. The abstract should avoid mathematical symbols whenever possible, and it must address the following:
- Context: What is the broad context of the work? What is the importance of the general research area?
- Inquiry: What problem or question does the paper address? How has this problem or question been addressed by others (if at all)?
- Approach: What was done that unveiled new knowledge?
- Knowledge: What new facts were uncovered? If the research was not results oriented, what new capabilities are enabled by the work?
- Grounding: What argument, feasibility proof, artifacts, or results and evaluation support this work?
- Importance: Why does this work matter?
NOTE: The absence of an abstract conforming to this specification is grounds for the rejection of the paper without review.
Attribution, Prior Papers, and Concurrent Submissions
Submitted papers must present original work made by the authors, must not overlap significantly with the authors’ previously published work, and must not be under review on another journal or conference.
Single-Blind Review
Currently, review uses a traditional process where author names are visible to reviewers. Submissions do not need to be anonymized to hide author names.