|
ea0be43199
|
Begin adding function calls
|
2024-10-12 10:55:34 -04:00 |
|
|
5bbda1a24e
|
Disallow comparison chaining
|
2024-10-12 08:16:06 -04:00 |
|
|
f1034534ed
|
Avoid emitting duplicate return instructions; Clean up
|
2024-10-12 07:12:44 -04:00 |
|
|
02877d06d3
|
Reduce use of TokenKind in parser to only error cases
|
2024-10-12 06:27:19 -04:00 |
|
|
6e1ef77192
|
Refactor to use index references to avoid cloning values
|
2024-10-12 03:06:44 -04:00 |
|
|
c1e372d7cf
|
Improve disassembler output; Fix return positions
|
2024-10-09 19:59:06 -04:00 |
|
|
b6c3b1e5ba
|
Refactor
|
2024-10-09 12:16:46 -04:00 |
|
|
259721f6cb
|
Continue implemnting functions; Begin adding types
|
2024-10-09 06:15:06 -04:00 |
|
|
bdc34cb10e
|
Begin adding functions to the language
|
2024-10-08 22:56:01 -04:00 |
|
|
35f73d60f0
|
Add tests for parser errors
|
2024-10-05 05:57:28 -04:00 |
|
|
437a6bf164
|
Add math-assignment operators
|
2024-10-05 04:33:38 -04:00 |
|
|
d857f42434
|
Pass all tests
|
2024-10-05 02:07:26 -04:00 |
|
|
9d0aa13e8a
|
Refactor VM, chunk and parser to pass tests
|
2024-10-05 00:11:03 -04:00 |
|
|
5015cf4cc4
|
Refactor how return instruction works; Begin passing tests
|
2024-10-04 22:33:47 -04:00 |
|
|
5411a1db27
|
Move and replace lots of tests; Refactor parser
|
2024-10-04 22:21:17 -04:00 |
|
|
7b055d79b5
|
Begin rewrite with register-based bytecode
|
2024-09-11 23:07:20 -04:00 |
|
|
86f8e47b0c
|
Avoid cloning constant and move identifier stack to the chunk
|
2024-09-11 04:22:54 -04:00 |
|
|
e4204c1b0d
|
Get variable scopes working
|
2024-09-11 03:10:12 -04:00 |
|
|
8f58bf30a4
|
Make everything messy
|
2024-09-10 18:19:59 -04:00 |
|
|
c3790e90bf
|
Implement blocks with scopes
|
2024-09-10 10:44:15 -04:00 |
|
|
4ba3a47ae5
|
Add implicit returns and fix variable declaration and resolution
|
2024-09-10 09:26:05 -04:00 |
|
|
f936c30b4f
|
Go to great lengths to avoid cloning Values; Extend error reports
|
2024-09-10 03:42:25 -04:00 |
|
|
8798efc0af
|
Add error reports and byte operations
|
2024-09-10 01:04:30 -04:00 |
|
|
8f20e53880
|
Add support for characters and bytes
|
2024-09-09 23:45:35 -04:00 |
|
|
85f5f44946
|
Pass all tests
|
2024-09-09 22:57:14 -04:00 |
|
|
c406039c99
|
Replace global variables with locals
|
2024-09-09 19:23:49 -04:00 |
|
|
32347ec512
|
Make chunk debug print infallible
|
2024-09-07 18:48:01 -04:00 |
|
|
e9ec838b25
|
Refactor and clean up
|
2024-09-07 17:16:14 -04:00 |
|
|
b8957190e0
|
Add and pass tests
|
2024-09-07 13:51:05 -04:00 |
|
|
3ac15fe70b
|
Implement let assignment
|
2024-09-07 12:15:47 -04:00 |
|
|
03d44434e2
|
Refactor parsing
|
2024-09-07 06:38:12 -04:00 |
|
|
616f890028
|
Pass parser test
|
2024-09-07 04:37:38 -04:00 |
|
|
812d930488
|
Continue writing bytecode implementation
|
2024-09-07 04:34:03 -04:00 |
|
|
406edda573
|
Begin parser
|
2024-09-06 23:30:43 -04:00 |
|
|
1ecaac0819
|
Start new rewrite of Dust
|
2024-09-06 19:27:16 -04:00 |
|
|
9349724bac
|
Fix doc tests; Clean up
|
2024-09-05 13:16:26 -04:00 |
|
|
c42fca496b
|
Track down tricky context bug
|
2024-09-05 13:10:38 -04:00 |
|
|
5c9a8dab31
|
Clean up
|
2024-09-05 11:36:55 -04:00 |
|
|
0aebd81665
|
Fix context bug
|
2024-09-03 00:09:32 -04:00 |
|
|
4433c587f5
|
Clean up context
|
2024-09-02 05:53:09 -04:00 |
|
|
2a0e4c9b78
|
Clean up context garbage collection
|
2024-09-02 03:58:53 -04:00 |
|
|
e643ebe114
|
Fix parsing bug
|
2024-08-31 07:24:45 -04:00 |
|
|
f2e5b8d499
|
Clean up; Fix tests
|
2024-08-30 19:58:07 -04:00 |
|
|
012728b00a
|
Try embedding contexts in the AST
|
2024-08-30 18:06:58 -04:00 |
|
|
b02e5244f2
|
Add defereference expressions
|
2024-08-28 11:31:47 -04:00 |
|
|
561a290b16
|
Implement block scopes; Refactor async block execution
|
2024-08-24 10:13:16 -04:00 |
|
|
e45ac042b9
|
Pass some docs tests
|
2024-08-23 16:47:57 -04:00 |
|
|
6a488c2245
|
Improve constructors
|
2024-08-23 11:44:47 -04:00 |
|
|
e84bb2ea70
|
Improve errors
|
2024-08-23 05:54:58 -04:00 |
|
|
0d0a2d2237
|
Add character literal tokens; Change strings to double quotes only
|
2024-08-23 05:24:48 -04:00 |
|
|
80bf09d807
|
Clean up
|
2024-08-20 15:55:35 -04:00 |
|
|
f9480ddc24
|
Add loop and break
|
2024-08-20 14:45:43 -04:00 |
|
|
4846b3f74d
|
Fix parsing bug that fixes garbage collection bug
|
2024-08-20 12:09:17 -04:00 |
|
|
cf9a9837c8
|
Add a parser test; Pass VM test
|
2024-08-20 07:20:44 -04:00 |
|
|
8b5eb9977c
|
Clean up
|
2024-08-20 04:38:15 -04:00 |
|
|
e3d821a1c3
|
Remimplement features
|
2024-08-20 00:15:19 -04:00 |
|
|
0fd19a623d
|
Improve AST ergonomics
|
2024-08-17 12:15:47 -04:00 |
|
|
0b64afccb1
|
Extend VM, abstract tree and parser
|
2024-08-17 10:07:38 -04:00 |
|
|
fa67a568d9
|
Pass parser tests; Fix garbage collection
|
2024-08-17 05:32:18 -04:00 |
|
|
b024d81148
|
Continue reimplementing the language
|
2024-08-17 04:06:13 -04:00 |
|
|
8bff39a7db
|
Prepare for value overhaul
|
2024-08-16 11:21:20 -04:00 |
|
|
7d721beb31
|
Implement VM and Analyzer by using the new AST
|
2024-08-16 09:22:36 -04:00 |
|
|
fedefdb29f
|
Implement "let" and "let mut" lexing/parsing
|
2024-08-16 07:09:46 -04:00 |
|
|
e911853cb5
|
Clean up
|
2024-08-16 05:24:55 -04:00 |
|
|
bfb07047a5
|
Implement VM
|
2024-08-16 05:14:00 -04:00 |
|
|
26348fb82e
|
Continue implementing the VM
|
2024-08-16 00:41:52 -04:00 |
|
|
40b5d15b96
|
Add parser mode to pass tests
|
2024-08-15 21:34:47 -04:00 |
|
|
44d6a88faa
|
Pass tests
|
2024-08-15 21:22:24 -04:00 |
|
|
486530610b
|
Continue passing tests and tweaking
|
2024-08-15 00:20:36 -04:00 |
|
|
81b7888920
|
Continue passing tests
|
2024-08-14 21:15:37 -04:00 |
|
|
f4ee3ffcf8
|
Continue passing tests
|
2024-08-14 19:43:12 -04:00 |
|
|
441df54a44
|
Continue passing tests
|
2024-08-14 18:30:36 -04:00 |
|
|
f4d29eca38
|
Begin passing tests again
|
2024-08-14 16:07:32 -04:00 |
|
|
fdf324c866
|
Continue AST overhaul
|
2024-08-14 15:52:04 -04:00 |
|
|
43b2393d8a
|
Begin AST overhaul
|
2024-08-14 14:28:39 -04:00 |
|
|
e7b5390a55
|
Add more value mutability
|
2024-08-14 04:59:27 -04:00 |
|
|
8666f1cd9b
|
Add parsing for mutable assignment
|
2024-08-14 03:53:15 -04:00 |
|
|
3ff3a7568c
|
Continue adding mutable variables
|
2024-08-14 01:13:43 -04:00 |
|
|
17286896a8
|
Add async blocks
|
2024-08-13 23:45:17 -04:00 |
|
|
58780b5530
|
Write docs and clean up
|
2024-08-13 22:25:33 -04:00 |
|
|
64a3ce4cd3
|
Implement subtraction assignment
|
2024-08-13 21:24:56 -04:00 |
|
|
5c8e72a6f7
|
Implement fields struct instantiation
|
2024-08-13 19:41:36 -04:00 |
|
|
b55a79d6bf
|
Add parsing for fields structs
|
2024-08-13 18:48:02 -04:00 |
|
|
5757f52dbd
|
Refactor to move assingment out of other binary operations
|
2024-08-13 17:34:45 -04:00 |
|
|
b1337900fb
|
Add analysis to prevent tuple structs with wrong types
|
2024-08-13 16:46:54 -04:00 |
|
|
83aa53b998
|
Add instantiation for tuple structs
|
2024-08-13 16:22:40 -04:00 |
|
|
049790726a
|
Add parsing for tuple structs
|
2024-08-13 15:12:32 -04:00 |
|
|
1d75bd6594
|
Add instantiating unit structs
|
2024-08-13 14:21:31 -04:00 |
|
|
7e7448fe52
|
Add parsing for unit struct defintions
|
2024-08-13 13:54:16 -04:00 |
|
|
390511fa20
|
Rewrite list indexing to use [] syntax
|
2024-08-12 19:06:57 -04:00 |
|
|
5ad6012021
|
Refine parsing and lexing
|
2024-08-12 16:57:10 -04:00 |
|
|
0fb0b63a97
|
Fix dot notations precedence; Add some miscellaneous expansions
|
2024-08-12 15:02:04 -04:00 |
|
|
a61c1756f2
|
Begin fixing map property parsing
|
2024-08-12 11:24:24 -04:00 |
|
|
0ba54e9717
|
Add another token type; Add ranges
|
2024-08-12 10:08:34 -04:00 |
|
|
755fe5d899
|
Refactor to use parser's 'parse_block' method
|
2024-08-12 09:06:42 -04:00 |
|
|
bf11bd1f0f
|
Fine-tune pratt parsing to support more complexity
|
2024-08-12 08:35:08 -04:00 |
|
|
c56a187d05
|
Add parser tests for new unary operations
|
2024-08-12 06:00:14 -04:00 |
|
|
2c374a1cd7
|
Begin adding unary operators
|
2024-08-12 05:44:05 -04:00 |
|
|
de30f241a8
|
Refactor function call dot notation; Add better analysis of function calls and property access
|
2024-08-11 21:37:44 -04:00 |
|
|
3a2dd28efb
|
Improve error layout
|
2024-08-11 18:01:35 -04:00 |
|