From 6ef467db948fe5d0e96e0d1be4f1c87ed19f1878 Mon Sep 17 00:00:00 2001 From: Ava Hahn Date: Thu, 2 Mar 2023 13:49:16 -0800 Subject: [PATCH] update Readme Signed-off-by: Ava Hahn --- Readme.org | 74 +++++++++++++++++++++++++++++++++--------------------- 1 file changed, 45 insertions(+), 29 deletions(-) diff --git a/Readme.org b/Readme.org index 467fdce..33a8b0d 100644 --- a/Readme.org +++ b/Readme.org @@ -30,8 +30,11 @@ https://matrix.to/#/#vomitorium:matrix.sunnypup.io **** TODO let **** TODO circuit *** TODO Defining variables and functions +**** TODO Anatomy **** TODO Undefining variables and functions *** TODO Builtin functions +*** TODO Documentation +(help function ** Configuration By default Relish will read from ~/.relishrc for configuration, but the default shell will also accept a filename from the RELISH_CFG_FILE environment variable. @@ -124,13 +127,22 @@ You can view the code for standard library functions in file:src/stl/. This contains any executable target of this project. Notably the main shell file:src/bin/main.rs. * Current Status / TODO list -Note: this section will not show the status of each item unless you are viewing it with a proper orgmode viewer -*** TODO Rudimentary Control Flow -**** DONE if clause -**** DONE let clause -**** TODO while clause -**** TODO circuit clause +Note: this section will not show the status of each item unless you are viewing it with a proper orgmode viewer. +Note: this section only tracks the state of incomplete TODO items. Having everything on here would be cluttered. + +*** TODO Control Flow +**** DONE if form +**** DONE let form +**** TODO while form +**** TODO circuit form +*** TODO Clean up tests, simplify, convert some to unit tests, mention tests in Readme as docs +*** TODO Document all internal/builtin functions in the rustiest way possible +*** TODO Custom ast pretty print *** TODO Help function +**** TODO add doc string to function form +**** TODO write doc strings to all symbols +**** TODO help function outputs name and help doc +**** TODO help function outputs current value or function form pretty printed *** TODO Eval function *** TODO Input function *** TODO Env function @@ -139,29 +151,7 @@ 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 tables *** TODO Main shell calls Load function on arg and exits -*** TODO Custom error struct with pretty printing -*** TODO Custom ast pretty print -*** TODO Shell module -**** TODO Process launching with environment variables -**** TODO Optional form of process which allows fd redirecting -**** TODO Foreground process TTY -**** TODO Background processes -*** TODO list operations -**** DONE append -**** DONE expand -**** TODO head (returns (head rest)) -**** TODO tail (returns (rest tail)) -**** TODO queue (append to front) -**** TODO snippet for dequeue -**** TODO snippet for pop -*** TODO string operations -**** TODO typecast (string) -**** TODO contains -**** TODO len -**** TODO concat -**** TODO substr by index -**** TODO split (on delimiter) -**** TODO strcons (sprintf but its all string tokens under the hood) +*** TODO Wrapping errors as they return from eval and call_sym *** TODO arithmetic operations **** TODO typecast (int) **** TODO typecast (float) @@ -177,9 +167,35 @@ Will need a concatenate function for tables **** TODO gt? **** TODO lt? **** TODO snippets for gte and lte +*** TODO string operations +**** TODO typecast (string) +**** TODO contains +**** TODO len +**** TODO concat +**** TODO substr by index +**** TODO split (on delimiter) +**** TODO strcons (sprintf but its all string tokens under the hood) +*** TODO Shell module +**** TODO Args parsing helper +**** TODO Process launching with environment variables +**** TODO Optional form of process which allows fd redirecting +**** TODO Foreground process TTY +**** TODO Background processes +*** TODO list operations +**** DONE append +**** DONE expand +**** TODO head (returns (head rest)) +**** TODO tail (returns (rest tail)) +**** TODO queue (append to front) +**** TODO snippet for dequeue +**** TODO snippet for pop *** TODO file operations **** TODO read-to-string **** TODO write-to-file +*** TODO Rename to Flesh +*** TODO Pick through core/ast and make sure no unnessesary moves are happening +*** TODO Create a dedicated community channel on matrix.sunnypup.io +*** TODO Post to relevant channels *** TODO Network library **** TODO HTTP Client **** TODO TCP Stream client