Commit Graph

459 Commits

Author SHA1 Message Date
Ryan Chandler
4501905705
interpreter: do enough to get recursive fib working 2022-11-24 01:43:52 +00:00
Ryan Chandler
402814fd95
wip 2022-11-23 19:05:30 +00:00
Ryan Chandler
cea9e8a704
Merge pull request #115 from edsrzf/float-e-sign 2022-09-23 20:40:18 +01:00
Evan Shaw
0ea4d49678 cargo fmt 2022-09-24 07:39:27 +12:00
Evan Shaw
50ecea182a lexer: Handle floats with sign after e 2022-09-23 22:03:12 +12:00
Ryan Chandler
9acb03b606
Merge pull request #114 from ryangjchandler/fix/top-level-statements 2022-09-22 21:13:37 +01:00
Ryan Chandler
ca65f801fb
parser: only allow certain statements at top level 2022-09-22 21:13:17 +01:00
Ryan Chandler
4b437ebe87
Merge pull request #113 from ryangjchandler/feature/remaining-shorthand-statements 2022-09-22 20:57:37 +01:00
Ryan Chandler
b97fd8e86d
chore: format 2022-09-22 20:54:34 +01:00
Ryan Chandler
d0914caffb
parser: shorthand declare 2022-09-22 20:54:23 +01:00
Ryan Chandler
1d377936e0
parser: shorthand switch 2022-09-22 20:38:53 +01:00
Ryan Chandler
af915e4575
parser: shorthand for 2022-09-22 20:32:11 +01:00
Ryan Chandler
b534d2c9d4
parser: support shorthand while 2022-09-22 20:20:56 +01:00
Ryan Chandler
f3b01d1812
Merge pull request #112 from edsrzf/int-upper 2022-09-21 13:00:36 +01:00
Ryan Chandler
54d0901a84
Merge pull request #111 from edsrzf/shorthand-ternary-precedence 2022-09-21 13:00:21 +01:00
Evan Shaw
d6af5b8c0b Handle uppercase letters for int literals 2022-09-21 22:44:54 +12:00
Evan Shaw
46abeec2b8 Add precedence for shorthand ternary operator 2022-09-21 22:29:40 +12:00
Ryan Chandler
723244eca0
Merge pull request #109 from edsrzf/lex-num-literal 2022-09-20 11:22:41 +01:00
Evan Shaw
05a50d3eb8 Lexer: handle all types of numeric literals 2022-09-20 21:56:49 +12:00
Ryan Chandler
8982feef66
Merge pull request #108 from ryangjchandler/feature/short-foreach 2022-09-19 11:29:07 +01:00
Ryan Chandler
1beb4e5634
chore: format 2022-09-19 11:25:15 +01:00
Ryan Chandler
2492a82bcc
parser: support short foreach statement 2022-09-19 11:24:45 +01:00
Ryan Chandler
ea5919a85d
Merge pull request #106 from edsrzf/parse-interpolated-string 2022-09-18 09:32:44 +01:00
Evan Shaw
4cfdf36b25 Parse interpolated strings 2022-09-18 11:41:30 +12:00
Ryan Chandler
dcdcd24197
Merge pull request #105 from edsrzf/lexer-variable-parse 2022-09-17 20:54:08 +01:00
Evan Shaw
21d600f5c1 lexer: string interpolation mostly implemented 2022-09-17 22:28:34 +12:00
Evan Shaw
f36ed99344 lexer: push and pop state when braces are encountered 2022-09-17 22:26:22 +12:00
Evan Shaw
be0d206c93 lexer: turn state into a stack 2022-09-17 22:26:22 +12:00
Ryan Chandler
e7dd32e2b0
parser: abstract colon expectations 2022-09-16 23:51:34 +01:00
Ryan Chandler
d078d20516
Merge pull request #104 from ryangjchandler/feature/short-ifs 2022-09-16 23:48:34 +01:00
Ryan Chandler
68abf6a3c6
chore: format 2022-09-16 23:47:43 +01:00
Ryan Chandler
dc67ca1040
parser: support short-hand else 2022-09-16 23:47:32 +01:00
Ryan Chandler
1eae564bca
parser: support shorthand elseifs 2022-09-16 23:45:07 +01:00
Ryan Chandler
425a5e12af
parser: support a basic shorthand if 2022-09-16 23:40:32 +01:00
Ryan Chandler
d19f7d5827
parser: add basic short if test case 2022-09-16 23:34:38 +01:00
Ryan Chandler
c2486d39db
Merge pull request #103 from ryangjchandler/feature/yields 2022-09-16 23:20:04 +01:00
Ryan Chandler
afa88ee664
parser: support all forms of yield/yield from 2022-09-16 23:18:31 +01:00
Ryan Chandler
6820d09938
parser: support empty yield expressions 2022-09-16 23:08:38 +01:00
Ryan Chandler
fc9aa62cff
Merge pull request #102 from ryangjchandler/feature/all-assignment-ops 2022-09-16 16:22:36 +01:00
Ryan Chandler
27d5705f85
parser/lexer: implement all assignment ops 2022-09-16 16:16:14 +01:00
Ryan Chandler
5a0fe5beb2
Merge pull request #101 from ryangjchandler/feature/infix-ops 2022-09-16 15:22:27 +01:00
Ryan Chandler
79bf633fac
chore: format 2022-09-16 15:20:49 +01:00
Ryan Chandler
e2065bf029
parser: support logical and, or, xor op 2022-09-16 15:20:16 +01:00
Ryan Chandler
a6388b3c57
parser: support <=> op 2022-09-16 15:16:23 +01:00
Ryan Chandler
a7d74e6b2d
parser/lexer: support <> op 2022-09-16 15:14:46 +01:00
Ryan Chandler
d99d931107
parser: support bitwise xor 2022-09-16 15:11:54 +01:00
Ryan Chandler
459bc0f0fb
parser: support bitwise & and | op 2022-09-16 15:10:43 +01:00
Ryan Chandler
274fc7c0d6
parser: support left and right shift op 2022-09-16 15:09:10 +01:00
Ryan Chandler
fb8ebd2484
parser: support % op 2022-09-16 15:07:41 +01:00
Ryan Chandler
50cc9aa5d2
Merge pull request #100 from ryangjchandler/feature/all-unary-ops 2022-09-16 15:01:34 +01:00