View the author copy.
Many tasks that end users want to accomplish with a computer program are fundamentally data-flow transformations, and both visual and textual programming systems have been created to fill this need, but these are often inflexible, unapproachable, or cumbersome, satisfying a niche at one stage of the process but limited at others. An approach that suits one part of the program, or one time in its development, may be confounding at another, but the user is stuck with both the constructive and obstructive aspects of a tool’s chosen paradigm throughout. Much of this difficulty can be removed by enabling the cohabitation of multiple editing paradigms in a single program for the user to choose how to tackle the current point in the process - and change their mind. We present a new data-flow programming environment where the same program, or parts of the same program, can be viewed and edited as linear text, a node-and-wire graph representation, or a two-dimensional grid layout, and the correspondence between these representations is made clear through a continuous visual identity for each part of the program.