Spreadsheet functional programming

@article{Wakeling2007SpreadsheetFP,
  title={Spreadsheet functional programming},
  author={David Wakeling},
  journal={Journal of Functional Programming},
  year={2007},
  volume={17},
  pages={131 - 143}
}
  • D. Wakeling
  • Published 1 January 2007
  • Computer Science, Economics
  • Journal of Functional Programming
Abstract The functional programming community has shown some interest in spreadsheets, but surprisingly no one seems to have considered making a standard spreadsheet, such as Excel, work with a standard functional programming language, such as Haskell. In this paper, we show one way that this can be done. Our hope is that by doing so, we might get spreadsheet programmers to give functional programming a try. 
Static Analysis of Spreadsheet Applications for Type-Unsafe Operations Detection
TLDR
A static analysis that detects all run-time type-unsafe operations in spreadsheets, based on an abstract interpretation of spreadsheet applications, including spreadsheet tables, global re-evaluation and associated programs and supports the features commonly found in real-world spreadsheets.
WebSheets: Web Applications for Non-Programmers
TLDR
WebSheets is proposed, a new paradigm for developing web applications using a spreadsheet-like language that can enable simple web applications to be developed without "programming," in much the same way that non-programmers create budgets or expense reports using spreadsheets.
An Abstract Domain to Infer Types over Zones in Spreadsheets
TLDR
An abstract interpretation based static analysis for spreadsheet programs that infers type constraints over zones of spreadsheets, viewed as two-dimensional arrays is proposed.
Implementing function spreadsheets
TLDR
The goal of this work is to develop implementations of function sheets and study their application to realistic examples and to report briefly on experiments with function sheets as well as other uses of the spreadsheet core implementation.
INTRODUCING CONDITIONAL ARRAY FORMULAS IN SPREADSHEET CLASSES
Reasons for spreadsheet-errors are many folded. One of the main reasons for these errors that spreadsheet applications are mainly designed for end-users who are not specified in programming, however
Translating Relational Queries into Spreadsheets
TLDR
It is demonstrated that a spreadsheet can implement all data transformations definable in SQL, merely by utilizing spreadsheet formulas, and a query compiler is provided, which translates any given SQL query into a worksheet of the same semantics, including NULL values.
On the semantics for spreadsheets with sheet-defined functions
Problem Solving in Sprego
TLDR
A converted authentic table is presented and, based on this table, data retrieval tasks, their algorithms, and coding in full details are presented, to demonstrate the power which lies within Sprego.
Spreadsheet-based template language prototype for tree data structure description and interpretation
TLDR
A language prototype for tree data structure description in a spreadsheet environment is suggested and an interpreter which generates a spreadsheet output according to the description written in the language prototype is presented.
Spreadsheet as a relational database engine
TLDR
This paper demonstrates that a spreadsheet can play the role of a relational database engine, without any use of macros or built-in programming languages, merely by utilizing spreadsheet formulas.
...
...

References

SHOWING 1-10 OF 24 REFERENCES
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.
Why Functional Programming Matters
TLDR
This paper shows that two features of functional languages in particular, higher-order functions and lazy evaluation, can contribute significantly to modularity.
Forms/3: A first-order visual language to explore the boundaries of the spreadsheet paradigm
TLDR
This paper shows that procedural abstraction, data abstraction and graphics output can be supported in the spreadsheet paradigm, and shows that, with the addition of a simple model of time, animated output and GUI I/O also become viable.
Haxcel A spreadsheet interface to Haskell written in Java.
TLDR
An extended array library for Haskell is presented, which provides a number of typical array-language facilities and provides an interactive environment that can be used both for development of general Haskell code and for array-oriented spreadsheet calculations.
Real programmers don't use spreadsheets
Spreadsheets were invented more than ten years ago and they are used as the only or primary computer language by millions of computer users [14]. However, the only reference that has been seen by the
The implementation of the Gofer functional programming system
TLDR
The main ideas and techniques used in the implementation of Gofer are described, to be particularly useful for work using Gofer as a platform to explore the use of new language features or primitives.
Validating the unit correctness of spreadsheet programs
TLDR
XeLda, the authors' tool for unit checking Excel spreadsheets, is described, which highlights cells if their formulas process values with incorrect units and if derived units clash with unit annotations.
A type system for statically detecting spreadsheet errors
TLDR
An implementation of the system that allows the user to check Microsoft Excel spreadsheets and defines the concept of a header and discusses two types of relationships between headers, namely is-a and has-a relationships.
Non-Strict Languages - Programming and Implementation
TLDR
This paper takes as an example an interactive functional program and describes the programming techniques depending on non-strict evaluation which improved its design, and describes Tim, a method of implementing non-Strict languages for which the penalty for using lazy evaluation is very small.
A user-centred approach to functions in Excel
We describe extensions to the Excel spreadsheet that integrate user-defined functions into the spreadsheet grid, rather than treating them as a "bolt-on". Our first objective was to bring the
...
...