Tutorial on the Methodology of Programming SystemsMOPS 2022
There is a whole world of interesting programming ideas if we look beyond the narrow focus on programming languages. Image-based systems like Smalltalk, no-code and low-code tools, live coding, visual programming and even spreadsheets are interesting not as programming languages, but as programming systems.
Unfortunately, doing research on programming system is hard. Computer scientists developed a rich repertoire of methodologies for studying programming languages. We can study their syntax, semantics, pragmatics or typing discipline. But no such repertoire exists for programming systems, which hinders our ability to compare different programming systems, identify novel characteristics of systems and advance the state of the art by building on the shoulders of giants.
The organizers of the tutorial recently developed the “Technical Dimensions” framework for studying programming systems . The framework identifies a number of technical dimensions (such as self-sufficiency, notational structure, composability or conceptual integrity, etc.) that can be used to structure discussion about programming systems and identify their important aspects and capture differences and commonalities between programming systems.
Let’s work together to develop a methodology for a more structured rigorous discussion about programming systems.
The tutorial is open to all attendees of ‹Programming› who are interested in studying programming systems. We want to work with the attendees on developing a methodology for programming systems research. As part of the tutorial we will:
- Discuss the difficulties in conducting research on programming systems
- Use the technical dimensions framework to analyse interesting programming systems developed by the attendees
- See whether this reveals any new insights about programming systems
- Discuss the next steps and alternative approaches for studying programming systems
If possible, the tutorial will be held in person or in a hybrid format, but we are still discussing the best format for the tutorial. If you find the above interesting, please let us know by filling out an informal pre-registration survey so that we know how to best run the event.