WIP commit:

- Big organizational updates
- Class of errors brought down to borrow checker level
This commit is contained in:
Ava Hahn 2023-02-15 20:05:48 -08:00
parent 6dcb804d34
commit b680e3ca9a
Signed by untrusted user who does not match committer: affine
GPG key ID: 3A4645B8CF806069
6 changed files with 162 additions and 138 deletions

View file

@ -107,7 +107,7 @@ Note: this section will not show the status of each item unless you are viewing
**** DONE Function table
**** DONE Variable table
*** DONE Echo function
*** TODO Redo segment.rs
*** DONE Redo segment.rs
**** DONE Clone impl for Ctr
(derived)
**** DONE Derive Clone for Seg
@ -119,14 +119,21 @@ Note: this section will not show the status of each item unless you are viewing
**** DONE Derive Default for Seg
**** WONTDO From/Into for Ctr
**** DONE Iterator for Seg
**** TODO YEET AST EVERYWHERE. PASS AROUND A FUCKING SEG REF DAMNIT
In string lib
**** TODO Consider RefCell for tables, or using 'static lifetime
one of these may fix borrow checker insanity
all you have to do is actually learn this shit
just pay attention
**** DONE YEET AST EVERYWHERE. PASS AROUND A SEG REF.
*** TODO refactor code into more digestible, better organized pieces
Just need to get core compiling at this point.
Refactors made include splitting func_call into reasonable segments
Reorganizing eval
*** TODO Rudimentary Control Flow
**** TODO if clause
**** TODO loop clause
**** TODO while clause
**** TODO circuit clause
*** TODO Configuration
*** DONE Configuration
**** DONE Function to load configuration into Variable and Function tables
**** DONE Configure in main shell
**** DONE manual verification of config settings
@ -140,15 +147,15 @@ Pull/Refactor the logic out of the configure functions.
Optionally return a list of new variables and/or functions?
Will need a concatenate function for func tables
*** TODO Main shell calls Load function on arg and exits
*** TODO Custom error printing
*** TODO Custom ast pretty print
*** DONE Implement Ctr, Ast to_string / Display trait
*** TODO get_stdlibphase1 -> configuration -> get_stdlibphase2
*** TODO STDLIB
*** TODO Shell module
**** TODO Process launching with environment variables
**** TODO Foreground process TTY
**** TODO Background processes
*** TODO Custom error printing
*** TODO Custom ast pretty print
*** TODO Implement Ctr, Ast to_string / Display trait
*** TODO get_stdlibphase1 -> configuration -> get_stdlibphase2
*** TODO STDLIB
**** DONE append
**** TODO string operations
***** DONE concatenate