Forms/3: A first-order visual language to explore the boundaries of the spreadsheet paradigm

@article{Burnett2001Forms3AF,
  title={Forms/3: A first-order visual language to explore the boundaries of the spreadsheet paradigm},
  author={Margaret M. Burnett and John William Atwood and Rebecca Walpole Djang and James Reichwein and Herkimer J. Gottfried and Sherry Yang},
  journal={Journal of Functional Programming},
  year={2001},
  volume={11},
  pages={155 - 206}
}
Although detractors of functional programming sometimes claim that functional programming is too difficult or counter-intuitive for most programmers to understand and use, evidence to the contrary can be found by looking at the popularity of spreadsheets. [] Key Method Using FormsF;3, we show that procedural abstraction, data abstraction and graphics output can be supported in the spreadsheet paradigm. We show that, with the addition of a simple model of time, animated output and GUI IF;O also become…
Enhancing the Programmability of Spreadsheets with Logic Programming
  • P. Cox
  • Computer Science
    IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2007)
  • 2007
TLDR
This work proposes an enhancement in which sheets can be programmed using logic programming, and achieves a natural integration of logic-based and sheet-based computation, providing a concrete visualisation of operations that divide and assemble arrays of cells.
Programming for humans : a new paradigm for domain-specific languages
TLDR
The WYSIWYG editor enables the user to put programs directly into web pages, and the use of tables as the pervasive data structure forces a tight mapping between the notation and the possible problems that can be expressed.
InterState: a language and environment for expressing interface behavior
TLDR
A new programming language and environment that addresses the challenges of writing and reusing user interface code that uses a new visual notation that allows programmers to better understand and navigate their code and can scale to implement complex behaviors involving thousands of objects and constraints.
An interactive environment for beginning Java programmers
  • K. Goldman
  • Computer Science
    Sci. Comput. Program.
  • 2004
Subtext: uncovering the simplicity of programming
TLDR
Subtext is a new medium in which the representation of a program is the same thing as its execution, and unifies traditionally distinct programming tools and concepts, and enables some novel ones.
SOFTWARE ENGINEERING FOR VISUAL PROGRAMMING LANGUAGES
TLDR
The point—that the difference between programming languages that are VPLs and those that are not comes down simply to multidimensionality—seems to predict that software engineering methodologies and devices developed for software written in non-visual programming languages should serve for softwarewritten in VPLS as well.
End-user assertions in forms/3 : an empirical study
TLDR
An assertion tool for spreadsheet languages that extends Microsoft Excel's validation scheme and includes capabilities such as assertion propagation, which is aimed at bringing the benefits of software engineering to end users without requiring that they first learn software engineering principles.
Visual Programming Languages
  • P. Cox
  • Computer Science
    Wiley Encyclopedia of Computer Science and Engineering
  • 2008
TLDR
Several representative visual programming languages are presented, theoretical and cognitive issues are discussed, and a brief overview of current research in the area is provided.
The Deductive Spreadsheet
This book describes recent multidisciplinary research at the confluence of the fields of logic programming, database theory and human-computer interaction. The goal of this effort was to develop the
...
...

References

SHOWING 1-10 OF 124 REFERENCES
Similarity inheritance: a new model of inheritance for spreadsheet VPLs
TLDR
It is shown that bringing inheritance functionality to the spreadsheet paradigm can be done using the widely understood idea of copy/paste, and why the approach requires the presence of a live, visual environment.
Exception Handling in the Spreadsheet Paradigm
TLDR
An approach to exception handling for spreadsheet system users is presented that is aimed at this goal and the features of the approach are new; others are not new, but their effects on the programming language properties of spreadsheet systems have not been discussed before in the literature.
Implementing a Functional Spreadsheet in Clean
TLDR
This paper describes a first attempt to implement a spreadsheet in a lazy, purely functional language and introduces the possibility of asking the system to prove equality of symbolic cell expressions: a property which can greatly enhance the reliability of a particular user-defined spreadsheet.
FUDGETS: a graphical user interface in a lazy functional language
TLDR
This paper describes an implementation of a small windowbased graphical user interface toolkit for X Windows written in the lazy functional language LML, and suggests how the fudgets can evaluate in parallel.
Graphical techniques in a spreadsheet for specifying user interfaces
TLDR
The spreadsheet interface described here, called C32 automatically generates appropriate references to C32, provides the programmer with the full power of writgraphical objects when the user clicks on the object in a ing constraint code in the underlying programming lanuser interface window.
What you see is what you test: a methodology for testing form-based visual programs
TLDR
A testing methodology for form-based visual programs is presented that is validation driven and incremental, and an interface to the methodology is provided that does not require an understanding of testing theory.
Graphical definitions: expanding spreadsheet languages through direct manipulation and gestures
In the past, attempts to extend the spreadsheet paradigm to support graphical objects, such as colored circles or user-defined graphical types, have led to approaches featuring either a direct way of
Testing strategies for form-based visual programs
TLDR
It is shown that an analogue to the traditional "all-uses" dataflow test adequacy criterion is well suited for code based testing of form based visual programs: it provides important error detection ability, and can be applied more easily to form based programs than to imperative programs.
CogMap: a Visual Description Language for Spreadsheets
TLDR
This work describes 'CogMap', a tool for the visual expression of simple assertions about structure, function or any other propositions, and argues that the simple principles of CogMap allow it to be extended to many other visual programming environments.
Bridging the gulf between code and behavior in programming
TLDR
ZStep 94 is a program debugging environment designed to help the programmer understand the correspondence between static program code and dynamic program execution.
...
...