Spreadsheet functional programming
@article{Wakeling2007SpreadsheetFP, title={Spreadsheet functional programming}, author={David Wakeling}, journal={Journal of Functional Programming}, year={2007}, volume={17}, pages={131 - 143} }
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.
22 Citations
Static Analysis of Spreadsheet Applications for Type-Unsafe Operations Detection
- Computer ScienceESOP
- 2015
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
- Computer ScienceNSPW
- 2015
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
- Computer ScienceSAS
- 2012
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
- Computer ScienceWEUSE@ICSE
- 2008
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
- Computer Science
- 2012
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
- Computer ScienceIEEE Transactions on Knowledge and Data Engineering
- 2015
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
- Computer ScienceJ. Comput. Lang.
- 2020
Problem Solving in Sprego
- Computer ScienceArXiv
- 2016
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
- Computer ScienceCompSysTech '12
- 2012
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
- Computer ScienceSIGMOD Conference
- 2010
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
- Computer ScienceJ. Funct. Program.
- 1995
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
- Computer ScienceComput. J.
- 1989
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
- Computer ScienceJournal of Functional Programming
- 2001
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.
- Computer Science
- 2004
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
- Computer ScienceSIGP
- 1992
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…
Validating the unit correctness of spreadsheet programs
- EducationProceedings. 26th International Conference on Software Engineering
- 2004
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
- Computer Science18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings.
- 2003
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.
A user-centred approach to functions in Excel
- Computer ScienceICFP '03
- 2003
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…
Composing contracts: an adventure in financial engineering (functional pearl)
- Computer ScienceICFP '00
- 2000
A combinator library that allows us to describe financial and insurance contracts precisely, and a compositional denotational semantics that says what such contracts are worth.
Why no one uses functional languages
- Computer ScienceSIGP
- 1998
Functional languages are the language of choice for writing theorem provers, including the HOL system which helpeddebug the design of theHP 9000line of multiprocessors.