‹Programming› 2022
Mon 11 - Thu 14 April 2022
Wed 16 Mar 2022 06:30 - 06:45 at PX Online - PX/22 Chair(s): Luke Church, Richard P. Gabriel, Robert Hirschfeld, Hidehiko Masuhara

Programmers often use examples with concrete values to better understand code. Code by itself is abstract, which empowers it to be used for a variety of uses, but can be difficult to grasp by developers. Babylonian Programming addresses this by allowing programmers to concretize their code by defining and visualizing examples directly in the code itself while editing.

Currently, Babylonian Programming implementations such as Babylonian/S require programmers to define examples manually. For examples containing small objects this is straightforward, however when creating large or complex objects it is not. Sometimes, workarounds such as copying existing code pieces or trying to recreate existing objects are used to reuse information already present in the system, but these workarounds can be error-prone and also time-consuming.

In this paper, we propose example mining to address this issue by providing techniques and integrated tools to mine examples from existing sources similar to concepts from run-time tracing and test case extraction. Example mining introduces concepts to mine examples from tests, debugging sessions, and traces of actual usage of the system under development. All tools were implemented for Babylonian/S in Squeak/Smalltalk.

We demonstrate the usefulness of the tools through walkthroughs. Our tools provide examples for many methods immediately and automatically. As a consequence, programmers have more immediate access to dynamic feedback on their abstract code, making code comprehension and debugging more effective.

Wed 16 Mar

Displayed time zone: Lisbon change

05:00 - 08:00
PX/22PX/22 at PX Online
Chair(s): Luke Church University of Cambridge | Lund University | Lark Systems, Richard P. Gabriel Dream Songs, Inc. & HPI, Robert Hirschfeld HPI, University of Potsdam, Hidehiko Masuhara Tokyo Institute of Technology
05:00
15m
Talk
Programming in an fMRI Scanner: A Report from the Field
PX/22
Steven Tanimoto University of Washington, Seattle, Rob Thompson , Todd Richards , Cheri Yates , Virginia Berninger
05:15
15m
Talk
let chart = ⊥; let song = ♩; // Embedding Visual Languages in Code
PX/22
Elliot Evans Polytope
05:30
15m
Talk
An Experiment in Live Collaborative Programming on the Croquet Shared Experience Platform
PX/22
Yoshiki Ohshima Croquet Studios, Aran Lunzer Croquet Corporation, Jenn Evans , Vanessa Freudenberg Croquet Corp, Brian Upton , David Smith
05:45
15m
Talk
Calling Cards: Concrete Visual End-User Programming
PX/22
Michael Homer Victoria University of Wellington
06:00
15m
Talk
CodeMap: a Graphical Note-Taking Tool Cooperating with an Integrated Development Environment
PX/22
Rikito Taniguchi Tokyo Institute of Technology, Hidehiko Masuhara Tokyo Institute of Technology
06:15
15m
Talk
Toward Understanding Task Complexity in Maintenance-based Studies of Programming Tools
PX/22
Patrick Rein Hasso Plattner Institute, Tom Beckmann Hasso Plattner Institute, Toni Mattis Hasso Plattner Institute, University of Potsdam, Robert Hirschfeld HPI, University of Potsdam
06:30
15m
Talk
Example Mining - Assisting Example Creation to Enhance Code Comprehension
PX/22
Eva Krebs Hasso Plattner Institute (HPI), University of Potsdam, Germany, Patrick Rein Hasso Plattner Institute, Robert Hirschfeld HPI, University of Potsdam
06:45
15m
Talk
A Live Environment to Improve the Refactoring Experience
PX/22
Sara Fernandes FEUP, Universidade do Porto, Ademar Aguiar FEUP, Universidade do Porto, André Restivo LIACC, Universidade do Porto, Porto, Portugal
07:00
15m
Talk
Crosscut — Drawing Dynamic Representations
PX/22
Szymon Kaliski , Ivan Reese Ink&Switch, Marcel Goethals Ink&Switch
07:15
45m
Other
Open discussion
PX/22