[Working] A toy spread-sheet engine using SQL for backing
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



A toy spread-sheet engine with SQL backing

Each cell can have a name, a value and a formula.
Names hide but don't overwrite formulas and values (like giving a function or constant a name)
Formulae update values based on calculations
Values are values.

Formulae DON'T start in '=' (this isn't Excel!)
Formulae are infix, support functions and scientific notation of large numbers.
Functions are nestable.
	+  add
	-  substract
	*  multiply
	/  divide
	^  exponent
	%  modulo
Constants defined: (case insensitive)
	pi - Value of π
	e  - Value of e
	R  - Row (Y-value) of current cell
	C  - Column (X-value) of current cell
Functions defined: (case insensitive)
LOOKUP functions (co-ords are absolute. To get relative co-ordinates, do like "$(C,R-1)")
	$(x,y)  - value of cell at co-ordinates given
	$f(x,y) - function string of cell at co-ordinates given
	$n(x,y) - name of cell at co-ordinates given
	floor(x) - integer value from floor of float
	ceil(x)  - integer value from ceiling of float
	sqrt(x)  - square root of x
	cos(x)   - Cosine of x
	sin(x)   - Sine of x
	sign(x)  - *ve sign of x (-1, 0, 1)

 - More common functions
 - Lookup by cell name
 - Lookup by truth-table (1D and 2D to start with, possible reduction sets for 3+D)
 - Colour code cells by what fields are populated.
 - Use named cells as functions in formulae