|
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 |
|
|
207d155a25
|
Add basic analyzer implementation
|
2024-08-16 23:18:05 -04:00 |
|
|
447643f315
|
Expand Value and Expression
|
2024-08-16 22:43:29 -04:00 |
|
|
8ae453add7
|
Continue value overhaul
|
2024-08-16 17:07:49 -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 |
|
|
84429ef187
|
Implement operator expressions in the VM
|
2024-08-16 06:43:29 -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 |
|
|
b48b5d4369
|
Begin reimplementing the VM
|
2024-08-15 23:17:49 -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 |
|
|
535e120256
|
Add mutable values
|
2024-08-14 01:03:46 -04:00 |
|
|
17286896a8
|
Add async blocks
|
2024-08-13 23:45:17 -04:00 |
|
|
d32633272c
|
Add docs and an unused function for fun
|
2024-08-13 22:57:37 -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 |
|
|
a78d560a0d
|
Add docs
|
2024-08-13 18:27:03 -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 |
|
|
87455ed792
|
Continue adding struct lexing and test
|
2024-08-13 13:28:22 -04:00 |
|
|
2b8dda14e3
|
Add anaylsis to check for valid fields and indexes
|
2024-08-13 13:12:13 -04:00 |
|
|
40a71da3a5
|
Fix identifier caching; Add docs; Add minor fixes
|
2024-08-13 12:23:25 -04:00 |
|
|
f3bef42563
|
Write some failing analyzer tests
|
2024-08-12 19:39:26 -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 |
|
|
f62cb13089
|
Allow indexing lists with ranges
|
2024-08-12 10:43:18 -04:00 |
|
|
2a0737fd45
|
Add test; Clean up context
|
2024-08-12 10:29:06 -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 |
|
|
c71c4d2d07
|
Refactor VM to own its context
|
2024-08-12 08:54:21 -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 |
|
|
74cfef1832
|
Work out the finer details of the garbage collector
|
2024-08-12 04:10:07 -04:00 |
|
|
0e3a3e94c8
|
Add context tests
|
2024-08-11 22:47:52 -04:00 |
|
|
2463e44301
|
Test and implement basic garbage collection
|
2024-08-11 22:41:40 -04:00 |
|
|
78228ce8d6
|
Add new analyzer and vm tests
|
2024-08-11 22:02:17 -04:00 |
|
|
f2c0786bfb
|
Simplify "run" function
|
2024-08-11 21:42:16 -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 |
|
|
c0254e8a94
|
Refactor to use type checking
|
2024-08-11 19:18:13 -04:00 |
|
|
77814c4576
|
Begin refactoring to use type checking
|
2024-08-11 19:00:37 -04:00 |
|
|
7259206c98
|
Add analyzing built-in function calls
|
2024-08-11 18:11:59 -04:00 |
|
|
3a2dd28efb
|
Improve error layout
|
2024-08-11 18:01:35 -04:00 |
|
|
3b0c74010e
|
Rename modules
|
2024-08-11 17:24:05 -04:00 |
|
|
f5836b66dc
|
Clean up
|
2024-08-11 16:57:52 -04:00 |
|
|
9a9d9458ae
|
Clean up block/map parsing code
|
2024-08-11 15:39:42 -04:00 |
|
|
9338d73621
|
Add to_string function; Get fizzbuzz example working
|
2024-08-11 15:12:19 -04:00 |
|
|
28c65b0715
|
Clean up control flow code in the VM; Remove returns from if and if/else_if statements
|
2024-08-11 15:03:26 -04:00 |
|
|
0c73f80947
|
Implment control flow lexing and parsing
|
2024-08-11 14:35:33 -04:00 |
|
|
24e21aa0b5
|
Add test; Attempt to clean up map and block parsing
|
2024-08-11 13:16:16 -04:00 |
|
|
37e3e1116d
|
Add while loops
|
2024-08-10 05:23:43 -04:00 |
|
|
1687fd7fe3
|
Clean up; Add an analyzer test
|
2024-08-10 04:45:30 -04:00 |
|
|
a46e5dd365
|
Fix remaining doc tests
|
2024-08-10 04:32:27 -04:00 |
|
|
8f0d07b546
|
Fix parsing bug and some docs tests
|
2024-08-10 04:29:46 -04:00 |
|
|
f2823b6236
|
Tweak operator precedence
|
2024-08-10 00:14:38 -04:00 |
|
|
2ae75dcdd0
|
Make meticulous changes to pratt parser
|
2024-08-10 00:01:50 -04:00 |
|
|
9ea203f419
|
Use context and replace old variable map
|
2024-08-09 21:12:36 -04:00 |
|
|
e1b04328d5
|
Add context
|
2024-08-09 20:52:13 -04:00 |
|
|
f50b765c1e
|
Clean up
|
2024-08-09 20:24:18 -04:00 |
|
|
82fbf796f3
|
Implement postfix parsing
|
2024-08-09 18:14:46 -04:00 |
|
|
60f8aab805
|
Refactor pratt parser
|
2024-08-09 14:01:01 -04:00 |
|
|
ed82f3c64f
|
Lex, parse and run maps and blocks
|
2024-08-09 11:41:23 -04:00 |
|
|
f389f7e422
|
Implement equality operation
|
2024-08-09 07:15:09 -04:00 |
|
|
24a2642f17
|
Add modulo support
|
2024-08-09 07:02:55 -04:00 |
|
|
2cf580d111
|
Add division
|
2024-08-09 06:46:24 -04:00 |
|
|
a048577143
|
Improve assignment parsing
|
2024-08-09 06:32:44 -04:00 |
|
|
929468338d
|
Add map parsing
|
2024-08-09 06:09:59 -04:00 |
|
|
55a8661618
|
Begin adding maps
|
2024-08-09 05:18:39 -04:00 |
|
|
d0dba35285
|
Add && and || operators
|
2024-08-09 04:56:24 -04:00 |
|
|
8c8fde94ce
|
Refactor the abstract syntax tree
|
2024-08-09 04:23:02 -04:00 |
|
|
b9081f8653
|
Add comparison statement to replace four separate statements
|
2024-08-09 03:00:48 -04:00 |
|
|
580b85e2d0
|
Clean up tokens
|
2024-08-09 01:55:34 -04:00 |
|
|
83018ec5ec
|
Improve error reports
|
2024-08-09 01:43:58 -04:00 |
|
|
c1b71ffccc
|
Refactor errors and clean up read_line
|
2024-08-09 00:49:17 -04:00 |
|
|
9766777a47
|
Expand lexing of complex floats
|
2024-08-09 00:31:38 -04:00 |
|
|
60bd8f5352
|
Implement subtraction and multiplication
|
2024-08-08 23:28:47 -04:00 |
|
|
57782d3ed6
|
Clean up docs
|
2024-08-08 22:44:34 -04:00 |
|
|
cccbe7a325
|
Write docs
|
2024-08-08 21:59:09 -04:00 |
|
|
77134e5292
|
Begin adding fancy errors
|
2024-08-08 21:47:49 -04:00 |
|
|
4805a53269
|
Begin expanding errors
|
2024-08-08 20:58:56 -04:00 |
|
|
fa2ce8a0bf
|
Refactor TokenOwned and add some docs
|
2024-08-08 20:22:27 -04:00 |
|
|
bf519ec087
|
Borrow string slices instead of copying them in lexing
|
2024-08-08 16:19:14 -04:00 |
|
|
1c24286696
|
Improve identifier cache
|
2024-08-08 14:58:12 -04:00 |
|
|
d5d51e9849
|
Clean up
|
2024-08-08 13:57:53 -04:00 |
|
|
a52e78150e
|
Add lexing and parsing for I/O built-in functions; Refactor built-in function parsing
|
2024-08-08 13:49:40 -04:00 |
|
|
8dd62e623e
|
Refactor add statement analysis to allow strings
|
2024-08-08 13:21:27 -04:00 |
|
|
a639641ed2
|
Parse strings and string concatentation
|
2024-08-08 13:11:32 -04:00 |
|
|
097b09b6e3
|
Lex strings and string concatenation
|
2024-08-08 13:08:53 -04:00 |
|
|
f5e822e916
|
Add and pass analyzer tests
|
2024-08-08 13:01:25 -04:00 |
|
|
e4ea402dfa
|
Move built-in functions to a separate module
|
2024-08-07 19:44:01 -04:00 |
|
|
9840c3c193
|
Clean up and add docs
|
2024-08-07 19:12:40 -04:00 |
|
|
1fe26e0296
|
Remove generic position from nodes and replace with Spans
|
2024-08-07 19:03:50 -04:00 |
|
|
35eca1f7b4
|
Clean up
|
2024-08-07 18:46:40 -04:00 |
|
|
285e9e7217
|
Implement is_odd and length functions; Pass all tests
|
2024-08-07 18:43:24 -04:00 |
|
|
b17da5ad3c
|
Get built-in functions working
|
2024-08-07 18:39:28 -04:00 |
|
|
4d7f59aee2
|
Begin implementing better built-in features
|
2024-08-07 18:24:25 -04:00 |
|
|
06f3a9b746
|
Remove built-in value statements
|
2024-08-07 15:53:43 -04:00 |
|
|
cda0203242
|
Replace spans with a generic type
|
2024-08-07 15:47:37 -04:00 |
|
|
76a67c5117
|
Add parse examples
|
2024-08-07 12:32:18 -04:00 |
|
|
e295aebf56
|
Add examples
|
2024-08-07 12:13:49 -04:00 |
|
|
f64babc546
|
Add more analysis to the analyzer
|
2024-08-07 11:57:15 -04:00 |
|
|
7328467e64
|
Add analysis step to run function
|
2024-08-07 11:38:08 -04:00 |
|
|
5d01f1caf9
|
Implement parsing and evaluation of boolean expressions
|
2024-08-07 10:50:19 -04:00 |
|
|
692f1145cd
|
Implement lexing for boolean values
|
2024-08-07 10:41:27 -04:00 |
|
|
a60df0274c
|
Add the expected_type function for statements
|
2024-08-07 10:03:33 -04:00 |
|
|
dfee50003a
|
Clean up dependencies and add a few more tests
|
2024-08-05 18:45:43 -04:00 |
|
|
28e0ec27e8
|
Implement is_even and is_odd
|
2024-08-05 18:34:20 -04:00 |
|
|
6983d282d8
|
Begin adding support for more built-in properties
|
2024-08-05 15:54:48 -04:00 |
|
|
8c5ac0b89e
|
Add parsing for list access
|
2024-08-05 14:58:58 -04:00 |
|
|
80a7700d68
|
Implement property access
|
2024-08-05 14:31:08 -04:00 |
|
|
b81c65629b
|
Add docs
|
2024-08-05 00:54:12 -04:00 |
|
|
61f136edd2
|
Refactor and clean up
|
2024-08-05 00:40:51 -04:00 |
|
|
2268fc827d
|
Add analyzer; Rename some things
|
2024-08-04 23:11:04 -04:00 |
|
|
f2bfe2ed06
|
Add basic VM
|
2024-08-04 22:15:31 -04:00 |
|
|
0ca443b133
|
Add test
|
2024-08-04 21:39:57 -04:00 |
|
|
161e99a2dd
|
Add list parsing
|
2024-08-04 21:31:18 -04:00 |
|
|
bd491c014d
|
Build spans into instructions
|
2024-08-04 20:08:43 -04:00 |
|
|
51c7ae148c
|
Add float lexing
|
2024-08-04 19:41:00 -04:00 |
|
|
1607db20f9
|
Rename Token::Integer to Token::Number
|
2024-08-04 19:28:28 -04:00 |
|
|
5d7122aefa
|
Add tests and clean up
|
2024-08-04 19:25:44 -04:00 |
|
|
cc188a233b
|
Overhaul project structure
|
2024-08-03 20:23:52 -04:00 |
|
|
473f0ee075
|
Begin adding hand-written parser for Dust
|
2024-08-03 18:40:27 -04:00 |
|
|
2f06b18c3c
|
Move type module out of abstract tree module
|
2024-08-02 16:33:40 -04:00 |
|
|
3fae807d9f
|
Clean up with clippy
|
2024-08-02 15:21:15 -04:00 |
|
|
0e479197a7
|
Clean up
|
2024-08-02 11:01:02 -04:00 |
|
|
175d82d382
|
Fix and clean up interpreter changes
|
2024-07-28 13:11:42 -04:00 |
|
|
77e84f9fa8
|
Separate interpreter into its own module
|
2024-07-28 13:06:59 -04:00 |
|
|
02dd33ab1a
|
Add error; Clean up struct values
|
2024-07-28 12:52:07 -04:00 |
|
|
9640feb65b
|
Add pretty errors example; Add validation in math
|
2024-07-15 17:21:18 -04:00 |
|
|
d3f5585d07
|
Add interpreter context management
|
2024-07-15 16:58:54 -04:00 |
|
|
501801b63e
|
Rearrange repo; Add rust example
|
2024-07-15 16:42:49 -04:00 |
|
|
a3917238d9
|
Add docs
|
2024-07-15 15:49:34 -04:00 |
|
|
a02cee0b9f
|
Add two new tests and refactor to pass them
|
2024-07-13 10:47:24 -04:00 |
|
|
3addb767fa
|
Normalize top-level API
|
2024-07-12 20:54:23 -04:00 |
|
|
62ece61ce6
|
Fix test
|
2024-07-12 19:53:10 -04:00 |
|
|
2dbbc7b128
|
Make errors nice
|
2024-07-12 16:16:28 -04:00 |
|
|
c47d09fd1d
|
Add enum type validation
|
2024-07-12 16:04:47 -04:00 |
|
|
790438d1e3
|
Add type arguments to enum instances
|
2024-07-12 11:08:53 -04:00 |
|
|
ad409b69f3
|
Run clippy and clean up everything
|
2024-07-12 10:20:52 -04:00 |
|
|
4ab838509b
|
Break one test with new validation
|
2024-07-11 18:15:03 -04:00 |
|
|
994fa7310b
|
Fix all warnings
|
2024-07-11 17:57:35 -04:00 |
|
|
c85958064a
|
Fix test; Pass all tests
|
2024-07-11 17:54:59 -04:00 |
|
|
f3fe03a95f
|
Fix function context bug
|
2024-07-11 17:22:30 -04:00 |
|
|
1794f7559c
|
Clean up
|
2024-07-11 08:10:12 -04:00 |
|
|
48f3ccdd58
|
Fix inheritance; Add a test
|
2024-07-09 23:01:54 -04:00 |
|
|
dd72faf7c8
|
Continue experimenting with context and scopes
|
2024-07-06 02:41:43 -04:00 |
|
|
e84e022eed
|
Experiment with context scopes
|
2024-07-04 14:40:26 -04:00 |
|
|
0e52ed7a49
|
Improve context recursion
|
2024-07-02 21:06:23 -04:00 |
|
|
dce6dfbc40
|
Improve context recursion
|
2024-07-02 20:25:47 -04:00 |
|
|
ecd83a17e7
|
Fix function scope bug
|
2024-07-02 13:45:32 -04:00 |
|
|
9bd39338d5
|
Combine define and verify functions on AST nodes
|
2024-07-02 13:11:31 -04:00 |
|
|
db94fbdb5b
|
Fix test
|
2024-07-01 18:52:54 -04:00 |
|
|
7ec640a3a1
|
Improve error
|
2024-07-01 18:02:12 -04:00 |
|
|
92f098b58b
|
Implement null statement
|
2024-07-01 17:49:49 -04:00 |
|
|
7e152f9f51
|
Continue standard library implementation
|
2024-07-01 16:59:39 -04:00 |
|
|
699576c4c7
|
Add use statements with pre-compile std library
|
2024-07-01 14:23:01 -04:00 |
|
|
a79cb0b3e1
|
Begin adding use statement
|
2024-07-01 10:40:36 -04:00 |
|
|
1e7636903e
|
Add use token
|
2024-06-28 15:59:20 -04:00 |
|
|
adfd3aa5d4
|
Add list type check; Clean up
|
2024-06-28 15:35:18 -04:00 |
|
|
fe0bb0a0b5
|
Clean up
|
2024-06-26 18:09:38 -04:00 |
|
|
29bbcb019d
|
Add and pass validation test
|
2024-06-26 16:24:41 -04:00 |
|
|
9a2e4f3649
|
Add more Display implementations
|
2024-06-26 14:44:23 -04:00 |
|
|
6130f73ca8
|
Continue writing Display implementations
|
2024-06-26 14:21:55 -04:00 |
|
|
822f12b44d
|
Add Display implementations for abstract tree
|
2024-06-26 12:50:46 -04:00 |
|
|
49fe4555c6
|
Clean up
|
2024-06-26 11:35:39 -04:00 |
|
|
a177f19f28
|
Pass all tests
|
2024-06-24 16:48:39 -04:00 |
|
|
2da0a6a28b
|
Clean up; Add example
|
2024-06-24 15:07:11 -04:00 |
|
|
7dc7f7a351
|
Fix type generic bug
|
2024-06-24 14:44:10 -04:00 |
|
|
97268c272e
|
Use rust-style type parameter syntax
|
2024-06-24 13:54:37 -04:00 |
|
|
37d54499da
|
Use rust-style turbofish
|
2024-06-24 13:48:31 -04:00 |
|
|
2cbeb4b551
|
Clean up
|
2024-06-24 11:14:43 -04:00 |
|
|
fbaf640fce
|
Add global identifier cache
|
2024-06-24 10:46:37 -04:00 |
|
|
38ffd9b01b
|
Add validations
|
2024-06-24 10:26:38 -04:00 |
|
|
a5c5075e6b
|
Pass all tests
|
2024-06-24 10:09:07 -04:00 |
|
|
63f648c3ac
|
Pass all tests
|
2024-06-24 09:09:38 -04:00 |
|
|
2e9a523058
|
Continue fixing built-in functions
|
2024-06-24 08:17:06 -04:00 |
|
|
18859cda77
|
Begin fixing built-in functions
|
2024-06-24 07:13:54 -04:00 |
|
|
f106d64367
|
Simplify built-in functions
|
2024-06-24 05:26:49 -04:00 |
|
|
c75dedb117
|
Add fields to map type
|
2024-06-24 04:16:05 -04:00 |
|
|
5e8945cab5
|
Begin adding fields to map type
|
2024-06-24 04:02:44 -04:00 |
|
|
37d59f562d
|
Fix io.read_line function
|
2024-06-24 02:58:19 -04:00 |
|
|
49dfdc4e10
|
Pass all tests
|
2024-06-24 02:26:19 -04:00 |
|
|
b6b7a61727
|
Fix if/else bug
|
2024-06-24 02:18:58 -04:00 |
|
|
fbcb28ce24
|
Fix built-in function bug
|
2024-06-24 02:01:08 -04:00 |
|
|
ff5c4972eb
|
Fix built-in function bug
|
2024-06-24 01:41:16 -04:00 |
|
|
40172e3ffb
|
Fix assignment bug
|
2024-06-24 00:47:11 -04:00 |
|
|
64ce3d56e4
|
Fix function call bug
|
2024-06-24 00:38:06 -04:00 |
|
|
af20dab0d2
|
Refactor function types
|
2024-06-23 22:39:33 -04:00 |
|
|
572d5a9d18
|
Finish built-in function refactoring
|
2024-06-22 19:44:33 -04:00 |
|
|
34cea3518d
|
Begin refactoring built-ins
|
2024-06-22 17:17:35 -04:00 |
|
|
6bdefd0698
|
Continue major refactoring
|
2024-06-22 13:55:43 -04:00 |
|
|
d06a614cfa
|
Load standard library correctly
|
2024-06-22 11:50:44 -04:00 |
|
|
a05d9016f2
|
Begin passing tests
|
2024-06-22 11:44:09 -04:00 |
|
|
890baa5d51
|
Refactoring and troubleshooting
|
2024-06-22 07:46:10 -04:00 |
|
|
041480a953
|
Complete refactoring
|
2024-06-22 07:09:31 -04:00 |
|
|
1cd101db3f
|
Refactor context
|
2024-06-22 06:36:59 -04:00 |
|
|
240c045a0c
|
Begin passing tests
|
2024-06-22 01:19:30 -04:00 |
|
|
4b89ea0e96
|
Continue refactoring
|
2024-06-22 00:58:30 -04:00 |
|
|
88906fb6d7
|
Continue refactoring
|
2024-06-21 23:37:25 -04:00 |
|
|
fb413e24b0
|
Begin AbstractTree refactoring
|
2024-06-21 20:59:38 -04:00 |
|
|
d98f724355
|
Refactor AsyncBlock::run
|
2024-06-21 18:51:42 -04:00 |
|
|
b3e04f987f
|
Rename Type::None to Type::Void
|
2024-06-21 18:30:16 -04:00 |
|
|
a28ac297c1
|
Refactor abstract tree traits
|
2024-06-21 18:28:12 -04:00 |
|
|
578cb6ad16
|
Add new function for EnumDeclaration
|
2024-06-21 13:56:04 -04:00 |
|
|
880fb7cd1b
|
Consolidate token symbols
|
2024-06-20 19:25:46 -04:00 |
|
|
a94251e707
|
Rework enums and type constructors
|
2024-06-20 18:41:07 -04:00 |
|
|
1593080b8d
|
Reorganize parser
|
2024-06-20 16:36:16 -04:00 |
|
|
e429693364
|
Begin converting type assingment to declarations
|
2024-06-20 16:28:33 -04:00 |
|
|
0b8880ae55
|
Fix lots of parsing and type inferencing
|
2024-06-19 20:14:51 -04:00 |
|
|
e7e5d1c08d
|
Pass all tests
|
2024-06-19 12:12:28 -04:00 |
|
|
fecc62811d
|
Improve type inference
|
2024-06-19 12:03:25 -04:00 |
|
|
0de25215b8
|
Implement basic enum instances
|
2024-06-19 10:48:22 -04:00 |
|
|
c2d8bd299f
|
Add enum parsing; Add assets for examples
|
2024-06-19 09:48:01 -04:00 |
|
|
51dd918789
|
Clean up
|
2024-06-19 05:08:10 -04:00 |
|
|
ed4820a137
|
Implement serde traits for Value
|
2024-06-19 04:56:56 -04:00 |
|
|
859d8db384
|
Implement serde for Value; Rework comment parsing
|
2024-06-19 03:32:51 -04:00 |
|
|
d37c618ead
|
Continue implementing type inference
|
2024-06-19 02:32:17 -04:00 |
|
|
b3dd610949
|
Continue implementing type inference
|
2024-06-19 00:22:37 -04:00 |
|
|
69da32d414
|
Fix type inference bug
|
2024-06-19 00:09:47 -04:00 |
|
|
aa79bea9a7
|
Implement type inferencing
|
2024-06-19 00:05:58 -04:00 |
|
|
ccdcc7c791
|
Fix tests and comment some out
|
2024-06-18 22:03:41 -04:00 |
|
|
7dc62bfd5f
|
Continue implementing type construtors
|
2024-06-18 22:01:18 -04:00 |
|
|
799467b25b
|
Reduce ambiguity for function parsing
|
2024-06-18 21:44:22 -04:00 |
|
|
7c809fa764
|
Clean up and prettify parsing errors
|
2024-06-18 19:42:04 -04:00 |
|
|
c0791ebb83
|
Fix type error
|
2024-06-18 19:00:15 -04:00 |
|
|
d5df74363a
|
Clean up
|
2024-06-18 18:54:17 -04:00 |
|
|
b0d80ab867
|
Clean up; Add error for assignment without a value
|
2024-06-17 18:00:42 -04:00 |
|
|
dd062e63f1
|
Change context storage from BTreeMap to HashMap
|
2024-06-17 17:39:44 -04:00 |
|
|
cddf199156
|
Fix tests; Implement type generics
|
2024-06-17 17:38:24 -04:00 |
|
|
d53ddd07eb
|
Fix tests and refine new parsing
|
2024-06-17 15:47:07 -04:00 |
|
|
dbabf874b7
|
Fix type check tests
|
2024-06-17 11:02:13 -04:00 |
|
|
9e0c0b4db3
|
Refine type constructor
|
2024-06-17 10:50:06 -04:00 |
|
|
e448c9dd4c
|
Add type constructor
|
2024-06-17 10:10:06 -04:00 |
|
|
a0b754cc1c
|
Begin preparing for type expressions
|
2024-06-16 03:12:04 -04:00 |
|
|
54071eb8c0
|
Add type aliases
|
2024-06-15 21:13:11 -04:00 |
|
|
f5bcf9511a
|
Continue implementing JSON parsing
|
2024-06-05 12:10:57 -04:00 |
|
|
f625568ced
|
Attempt to add JSON parsing
|
2024-06-04 14:47:15 -04:00 |
|
|
c8dfbda447
|
Add fs.read_file to standard library
|
2024-05-25 11:48:43 -04:00 |
|
|
d4c0633fab
|
Continue implementing comments
|
2024-05-23 18:06:04 -04:00 |
|
|
781e3d4263
|
Switch to pratt parser for "as" expressions
|
2024-05-23 17:45:08 -04:00 |
|
|
a0999e30f1
|
Continue implementing as expression
|
2024-05-21 19:48:27 -04:00 |
|
|
7b78250eca
|
Continue implementing as expression
|
2024-05-21 19:27:33 -04:00 |
|
|
8ea6b4be81
|
Begin implementing as expression
|
2024-05-21 17:07:12 -04:00 |
|
|
f7bc43d7e3
|
Replace context inheritance with parental refs
|
2024-05-21 16:32:23 -04:00 |
|
|
aadb51e1f1
|
Fix lexing and parsing errors
|
2024-05-20 17:15:05 -04:00 |
|
|
9c77ae2410
|
Fix parsing errors
|
2024-05-20 15:22:50 -04:00 |
|
|
8fb8a456cd
|
Improve built-in function call parsing
|
2024-05-18 17:55:58 -04:00 |
|
|
12210fd3ec
|
Clean up
|
2024-05-18 16:24:17 -04:00 |
|
|
9eb047a913
|
Revert to pratt parsing for all indexes
|
2024-05-18 16:21:46 -04:00 |
|
|
42f48e8d76
|
Improve syntax error reports
|
2024-05-18 14:27:42 -04:00 |
|
|
47c1617602
|
Clean up
|
2024-05-18 14:15:22 -04:00 |
|
|
70f55c85f4
|
Rewrite io.write_line built-in; Fix memory bug
|
2024-04-27 05:45:39 -04:00 |
|
|
2b546e7b63
|
Add example; Clean up pratt parser
|
2024-04-27 03:40:05 -04:00 |
|
|
d9889ef2d8
|
Add comments to lexer
|
2024-04-27 02:22:26 -04:00 |
|
|
71807c0777
|
Clean up
|
2024-04-22 17:02:53 -04:00 |
|
|
d400b8bb6a
|
Refine memory management
|
2024-04-22 08:25:20 -04:00 |
|
|
c659b56105
|
Refine memory management
|
2024-04-22 07:56:03 -04:00 |
|
|
bcd8e7c669
|
Refine memory management
|
2024-04-22 05:50:26 -04:00 |
|
|
8478d59000
|
Refine memory management
|
2024-04-22 03:41:21 -04:00 |
|
|
70face6765
|
Revise built-in functions; Add memory management
|
2024-04-22 01:51:34 -04:00 |
|
|
3d64883e2a
|
Continue revising built-in functions
|
2024-04-21 21:33:21 -04:00 |
|
|
4726288b9a
|
Continue built-in function revision
|
2024-04-21 18:22:59 -04:00 |
|
|
dbbb912b82
|
Continue revising built-in functions
|
2024-04-21 18:06:26 -04:00 |
|
|
fb78798a1d
|
Begin revising built-in functions
|
2024-04-21 17:00:08 -04:00 |
|
|
fe1e27fd70
|
Pass test
|
2024-04-02 23:13:03 -04:00 |
|
|
40783422d8
|
Add type checking for type arguments
|
2024-04-02 22:59:49 -04:00 |
|
|
200a5d9127
|
Add type argument test
|
2024-03-29 15:52:02 -04:00 |
|
|
e1002b21d9
|
Clean up
|
2024-03-29 15:08:45 -04:00 |
|
|
d7a5586bc9
|
Clean up
|
2024-03-27 14:11:18 -04:00 |
|
|
70303a77e6
|
Clean up
|
2024-03-27 13:53:55 -04:00 |
|
|
e728aa8fbb
|
Make fizzbuzz example work
|
2024-03-25 01:56:06 -04:00 |
|
|
f1f4d48d3a
|
Remove redundant source position info from AST
|
2024-03-25 01:36:33 -04:00 |
|
|
e50b231958
|
Overhaul AST
|
2024-03-25 00:16:55 -04:00 |
|
|
4b460c0e68
|
Clean up
|
2024-03-24 17:34:36 -04:00 |
|
|
2871fd125a
|
Pass all tests
|
2024-03-24 15:47:23 -04:00 |
|
|
966983920e
|
Toy with chumsky and ariadne
|
2024-03-24 15:35:19 -04:00 |
|
|
6b0bb0016f
|
Begin implementing type arguments
|
2024-03-24 12:21:08 -04:00 |
|
|
a0a9bc2fdf
|
Add type arguments to function calls
|
2024-03-24 10:58:09 -04:00 |
|
|
2b797c19f7
|
Pass all tests
|
2024-03-24 09:10:49 -04:00 |
|
|
7dfc026be5
|
Clean up
|
2024-03-23 20:36:23 -04:00 |
|
|
b392a4c7aa
|
Improve errors and built-ins
|
2024-03-23 19:12:18 -04:00 |
|
|
13c95dd12f
|
Improve errors
|
2024-03-23 17:51:40 -04:00 |
|
|
7263507e84
|
Refine error reports
|
2024-03-23 17:07:41 -04:00 |
|
|
004b7be27a
|
Implement better standard library interface
|
2024-03-23 11:24:25 -04:00 |
|
|
eaff59c88d
|
Continue standard library
|
2024-03-23 09:35:24 -04:00 |
|
|
a8f840a305
|
Continue with standard library
|
2024-03-23 08:47:57 -04:00 |
|
|
9bb4e1b944
|
Begin standard library
|
2024-03-23 08:15:48 -04:00 |
|
|
cb56fd05cd
|
Clean up
|
2024-03-22 17:50:47 -04:00 |
|
|
50b7b4bfc6
|
Clean up
|
2024-03-20 23:13:21 -04:00 |
|
|
d7d8fd2499
|
Run type definitions before other statements
|
2024-03-20 22:58:13 -04:00 |
|
|
fd0204fefa
|
Add thread.sleep to built-ins
|
2024-03-20 17:38:40 -04:00 |
|
|
690e248df6
|
Implement async blocks
|
2024-03-20 17:18:47 -04:00 |
|
|
e29e092875
|
Begin implementing async blocks
|
2024-03-20 17:05:37 -04:00 |
|
|
96afe7d3a3
|
Improve error reports; Add example
|
2024-03-20 16:15:45 -04:00 |
|
|
bb7cda1242
|
Fix lexer and all broken tests
|
2024-03-20 11:43:47 -04:00 |
|
|
5de92ced6e
|
Clean up
|
2024-03-20 08:53:51 -04:00 |
|
|
936b1f5de9
|
Improve named type parsing; Clean up
|
2024-03-20 08:36:18 -04:00 |
|
|
177888c962
|
Move tests
|
2024-03-20 06:56:20 -04:00 |
|
|
169260b8c1
|
Begin README; Add type check for functions
|
2024-03-20 05:31:14 -04:00 |
|
|
9b74023ade
|
Begin project restructure
|
2024-03-20 04:42:13 -04:00 |
|