Djel is a prototype system exploring multi-representation programming environments, where code can be presented in radically different forms at different moments. Several visual representations can be switched between at will, offering different perspectives on the same code.
Djel
Some of the representations draw on less-common programming paradigms, which have not been widely adopted in textual programming languages nor in the visual environments that recreate them. The ability to shift presentations of the code means that any given one can be used only when it is most helpful, whether that is for a piece of code or a point in its development.
When changing views, the current presentation animates smoothly into the new one, with the code morphing between the two. This is intended to help the user understand the relationship between the two views, and to make the transition less jarring.
Not every view will be useful, but the goal is to encourage more exploration of riskier ideas, and to make it easier to experiment with new ways of thinking about code without having to commit to them for everything.
This prototype combines representations introduced in Interleaved 2D Notation for Concatenative Programming, Live 2D Compositional Programming, Multiple-Representation Visual Compositional Dataflow Programming, Branching Compositional Data Transformations in jq, Visually, In-line Compositional Visual Programming, and novel views, all sharing a common semantic model and interconvertible.