-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTODO.yaml
More file actions
33 lines (32 loc) · 1.01 KB
/
TODO.yaml
File metadata and controls
33 lines (32 loc) · 1.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
TODO:
- add tests for order of operations
DONE:
- lexer:
- fix weird spacing
- fix spacing. "12i12i12i" should
return [(Complex (0,12), "12i12i")]
- fix Parse.Types, add sub-types (num contains number,float,etc.)
- implement:
- funcall
- complex
- int
- matrix
- array
- operations
- paren
- assignment
- lexer blueprint
- generate parse tree
- make defun not use parseFcall. `f(1,2,3,4) = 7` is invalid
- implement operator precidence (PEMDAS)
- state:
- create container for state
- walk parse tree
- make types and functions work
- fix assignment so ```a=1 b=a a=5``` does not change b to 5
- parse matrix from parse tree to Matrix type
- implement operations
- implement checks for matrix math && div/mod by 0
- implement matrix module
- add builtins (sin,cos,map,etc.)
- add eval/preload file evaluation