ECOOP 2022
Mon 6 June - Thu 7 July 2022 Berlin, Germany
Thu 30 Jun 2022 16:45 - 17:15 at Zoom - VCOOP 8 Chair(s): Tijs van der Storm

Traditionally, writing code is a non-graphical, abstract, and linear process. Not everyone is comfortable with this way of thinking. Can programming be transformed into a graphical, concrete, non-linear activity?

While nodes-and-wires and blocks-based programming environments do leverage graphical direct manipulation, users perform their manipulations on abstract syntax tree elements, which are still abstract. Is it possible to be more concrete—could users instead directly manipulate live program values to create their program?

We present a system, Maniposynth, that re-imagines functional programming as a non-linear workflow where program expressions are spread on a 2D canvas. The live results of those expressions are displayed and available for direct manipulation. The non-linear canvas liberates users to work out-of-order, and the live values continuously show what the program is doing, and also let users interact with the live values via drag-and-drop. Incomplete programs are gracefully handled via hole expressions, which allow Maniposynth to offer program synthesis. Throughout the workflow, the program is valid OCaml code which the user may inspect and edit in their preferred text editor at any time.

With Maniposynth’s direct manipulation features, we created 38 programs drawn from a functional data structures course. We additionally hired two professional OCaml developers to implement a subset of these programs. We report on these experiences and discuss to what degree Maniposynth meets its goals of providing a non-linear, concrete, graphical programming workflow.

Thu 30 Jun

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

16:45 - 18:15
VCOOP 8Research Papers at Zoom
Chair(s): Tijs van der Storm CWI; University of Groningen
16:45
30m
Talk
Maniposynth: Bimodal Tangible Functional ProgrammingArtifacts Evaluated - FunctionalVCOOP 2022
Research Papers
Brian Hempel University of Chicago, Ravi Chugh University of Chicago
Pre-print Media Attached
17:15
30m
Talk
Elementary Type InferenceArtifacts Evaluated - ReusableArtifacts Evaluated - FunctionalVCOOP 2022
Research Papers
Jinxu Zhao University of Hong Kong, Bruno C. d. S. Oliveira University of Hong Kong
17:45
30m
Talk
Defining Corecursive Functions in Coq Using ApproximationsVCOOP 2022ECOOP 2022
Research Papers
Vlad Rusu Inria, Lille, France, David Nowak CRIStAL, CNRS & University of Lille