|
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 |
|