‹Programming› 2024
8th International Conference on the Art, Science, and Engineering of Programming (‹Programming› 2024)
Powered by
Conference Publishing Consulting

8th International Conference on the Art, Science, and Engineering of Programming (‹Programming› 2024), March 11–15, 2024, Lund, Sweden

‹Programming› 2024 – Companion Proceedings

Contents - Abstracts - Authors

Frontmatter

Title Page


Welcome from the Chairs


‹Programming› 2024 Organization


‹Programming› 2024 Sponsors


8th International Workshop on Modern Language Runtimes, Ecosystems, and VMs (MoreVMs 2024)


10th International Workshop on Programming Experience (PX/24)


2nd International Workshop on the Art, Science, and Engineering of Quantum Programming (QP 2024)


2nd International Workshop on the Value Independence in Modern Programming Languages (VIMPL 2024)



Keynotes

Programming Algorithmic Art (Keynote)
Benoit Baudry
(Université de Montŕeal, Canada)
Some artists embrace randomness and geometric patterns. Many turn to programming as the appropriate medium to explore their ideas and create artworks. In this talk, we explore this artistic practice known as generative art or algorithmic art. We look at iconic examples of generative art and explore the current state of the art of programming abstractions and libraries that artists use.

Recent Evolution of Dart: A Pragmatic Story (Keynote)
Erik Ernst
(Google, USA)
This talk takes a look at a number of steps taken in recent years in the evolution of the Dart programming language, including null safety, local variable promotion and flow analysis, extension types, and more. Special emphasis is given to the pragmatic nature of many elements of these features, as opposed to the more ideal approach which is available to programming language designers who do not have an existing installed base of code, and a community of developers who do not want to change all of it just for fun. For example, the migration of null safety involved an additional kind of type that only existed during the transition period.


Posters and Demos

Containers for GUIs
Knut Anders Stokke ORCID logo, Mikhail BarashORCID logo, Jaakko Järvi, Elisabeth Stenholm, and Håkon Robbestad Gylterud
(University of Bergen, Norway; University of Turku, Finland)


Demo of the CodeScene Software Engineering Intelligence Platform: Informed Decision-Making and LLM-Based Refactoring
Markus Borg, Adam Tornhill, Pär Flygare, and Kalle Norrestam
(CodeScene, Sweden)


Towards a DevOps Modeling Based on Context-Oriented Programming
Harumi Watanabe ORCID logo, Nobuhiko Ogura ORCID logo, and Kenji Hisazumi
(Tokai University, Japan; Tokyo City University, Japan; Sibaura Institute of Technology, Japan)


The Next-Gen Interactive Runtime Simulator for Neural Network Programming
Sanaullah Sanaullah, Hasina Attaullah, and Thorsten Jungeblut
(Bielefeld University of Applied Sciences and Arts, Germany)



Programming with AI 2024

Dear Developers, What Do You Mean by Photography? (Keynote)
Nicolas Malevé
(Aarhus University, Denmark)
Machine vision has mobilised photography in unprecedented ways throughout the last decade. Classification algorithms became increasingly apt at parsing visual input, and more recent products such as Dall-e or Stable Diffusion have proved efficient in generating culturally relevant imagery. Every day, computer vision researchers engage in a practice that promises to reshape visuality and organise digital images, making them intelligible and actionable. Their work changes our ways of seeing and of imagining. Yet the field has spent little time addressing theoretically the politics and affordances of photographic mediation. In machine vision papers, photographs function in different ways. They are treated as straightforward visual ‘samples’ of the real world. They can also be used as aesthetic objects and their realism is presented as a marker of style. Further, they are conceived as self-standing documents free from the contexts from which they originated or the authors who created them. The presentation will explore these treatments of the image from the point of view of photography and aesthetic theory. In doing this, the talk will open a discussion about what an image theory relevant to computer vision scientists and programmers could be like.

Ironies of Programming Automation: Exploring the Experience of Code Synthesis via Large Language Models
Alan T. McCabe, Moa Björkman, Joel Engström, Peng Kuang, Emma Söderberg ORCID logo, and Luke Church ORCID logo
(Lund University, Sweden; University of Cambridge, United Kingdom)


Magic Markup: Maintaining Document-External Markup with an LLM
Edward Misback, Zachary Tatlock ORCID logo, and Steven Tanimoto ORCID logo
(University of Washington, USA)


Faster Feedback with AI? A Test Prioritization Study
Toni Mattis ORCID logo, Lukas Böhme ORCID logo, Eva Krebs ORCID logo, Martin C. Rinard, and Robert Hirschfeld ORCID logo
(Hasso Plattner Institute, Germany; University of Potsdam, Germany; Massachusetts Institute of Technology, USA)



MoreVMs 2024

Virtual Machines: Should We Keep Doing Them? (Invited Talk)
Javier Primás
(University of Buenos Aires, Argentina)
Virtual machines are software components that require high development efforts in order to obtain efficient implementations. In the past decade, the GraalVM has made it possible to cut the costs of language implementation through the use of Java as the mother of all VMs. However, a pressing question remains: Can we replicate this success in a platform that is truly open, widely available and without requiring special support from the host environment? This talk delves into the Powerlang experiment, which explores a runtime system enabling languages to operate atop JavaScript. The aim is to get the most out the JIT and GC capabilities that JS implementations provide. Rather than striving to develop the fastest VM, we investigate strategies to optimize the performance of our language within engines like V8, and explore the benefits and disadvantages of this approach.

Retro-fitting Garbage Collection into Rust (Invited Talk)
Jacob Hughes
(King’s College London, United Kingdom)


Tinyrossa: A Compiler Framework for Vertical, Verified Construction of Smalltalk VMs
Jan Vraný and Boris Shingarov
(LabWare, United Kingdom; LabWare, Canada)


BoaSpect: An Expressive Instrumentation Platform for JavaScript
Aäron Munsters, Elisa Gonzalez Boix ORCID logo, and Angel Luis Scull Pupo
(Vrije Universiteit Brussel, Belgium)


A Virtual Machine for Higher-Order Reactors
Bjarno Oeyen ORCID logo, Jens Nicolay ORCID logo, and Wolfgang De Meuter ORCID logo
(Vrije Universiteit Brussel, Belgium)



PX 2024

In-Line Compositional Visual Programming
Michael Homer ORCID logo
(Victoria University of Wellington, New Zealand)


Design of Flexible Code Block Comparisons to Improve Code Review of Refactored Code
Lo Heander, Emma Söderberg ORCID logo, and Christofer Rydenfält
(Lund University, Sweden)


Unanticipated Progress Indication: Continuous Responsiveness for Courageous Exploration
Marcel TaeumelORCID logo, Jens Lincke ORCID logo, and Robert Hirschfeld ORCID logo
(Hasso Plattner Institute, Germany; University of Potsdam, Germany)


Autocorrection in Projectional Editors
André L. Santos ORCID logo and Ângelo Mendonça
(ISCTE-IUL, Portugal)


Examples out of Thin Air: AI-Generated Dynamic Context to Assist Program Comprehension by Example
Toni Mattis ORCID logo, Eva Krebs ORCID logo, Martin C. Rinard, and Robert Hirschfeld ORCID logo
(Hasso Plattner Institute, Germany; University of Potsdam, Germany; Massachusetts Institute of Technology, USA)


Multi-threaded OpenSmalltalk VM: Choosing a Strategy for Parallelization
Leon Matthes, Marcel TaeumelORCID logo, Eliot Miranda ORCID logo, and Robert Hirschfeld ORCID logo
(Hasso Plattner Institute, Germany; University of Potsdam, Germany)


Implementing Babylonian/G by Putting Examples into Game Contexts
Eva Krebs ORCID logo, Toni Mattis ORCID logo, Marius Dörbandt, Oliver Schulz, Martin C. Rinard, and Robert Hirschfeld ORCID logo
(Hasso Plattner Institute, Germany; University of Potsdam, Germany; Massachusetts Institute of Technology, USA)


Developers’ Perspective on Today’s and Tomorrow’s Programming Tool Assistance: A Survey
Peng Kuang, Emma Söderberg ORCID logo, and Martin Höst
(Lund University, Sweden)



QP 2024

Property-Based Testing and Debugging of Quantum Programs (Keynote)
Mohammad Reza Mousavi ORCID logo
(King’s College London, United Kingdom)


Model-Based Framework for Continuous Adaptation and Evolution of Quantum-Classical Hybrid Systems
Fuyuki IshikawaORCID logo and Shinobu Saito
(National Institute of Informatics, Japan; NTT Computer and Data Science Laboratories, Japan)


A Constraint Programming Approach for QUBO Solving and Quantum Annealing
Philippe Codognet
(JFLI – CNRS, France; Sorbonne University, France; University of Tokyo, Japan)



VIMPL 2024

Verona: Ownership, Value Independence, Memory Management, and the Future of Mutation (Keynote)
Ellen Arvidsson ORCID logo
(Uppsala University, Sweden)


Lightweight Affine Types for Safe Concurrency in Scala (Keynote)
Philipp Haller ORCID logo
(KTH Royal Institute of Technology, Sweden)


A Formal Foundation of Reach Capabilities
Yichen Xu ORCID logo and Martin Odersky ORCID logo
(EPFL, Switzerland)


proc time: 9.23