fb724ccee4
add version flag
2023-06-11 23:48:18 -07:00
dariof4
9a93dd0e19
Add custom validator to fix multiline behaviour when working with strings
2023-06-11 18:23:36 +00:00
7d2fe51709
account for comment delimiters in strings
2023-06-08 17:13:45 -07:00
0a01f9178c
another tweak to eval/quote equivalency, more tests
2023-06-08 17:11:10 -07:00
33791c7f3b
update error message to actually be helpful
2023-06-08 13:54:31 -07:00
398726568a
fix evaluation behavior mismatch between functions and lambdas
...
Signed-off-by: Ava Hahn <ava@sunnypup.io>
2023-06-08 12:48:34 -07:00
a9cc38826e
Load stdlib with shell state ahead of configuration
2023-06-06 11:32:25 -07:00
981df23ea2
flip CFG_RELISH_POSIX behavior
...
Signed-off-by: Ava Hahn <ava@sunnypup.io>
2023-06-06 11:32:25 -07:00
8cc0202a7b
Readme and clippy cleanups
2023-05-28 23:22:49 +00:00
906cb16355
POSIX conditional compilation:
...
* All features related to POSIX environments (env vars, shell stuff) gated by feature flags
* Dependencies optional per feature flags
* new CI target for non-POSIX build
* new CI target for release binary artifact
Signed-off-by: Ava Hahn [ava@sunnypup.io ](mailto:ava@sunnypup.io)
2023-05-26 06:41:18 +00:00
3bbea6bea0
This MR finishes up all remaining Pre V1 goals
...
* add a posix exit() builtin
* improve separation of concerns regarding standard library structure
2023-05-25 23:08:44 +00:00
b3c0b80ee6
dont duplicate commands in autocomplete
...
Signed-off-by: Ava Hahn <ava@sunnypup.io>
2023-05-25 15:21:12 -07:00
23b295c10d
big important improvements to path autocomplete
2023-05-25 15:18:42 -07:00
789349df48
Error Messaging Redesign
...
This commit contains the following:
* New data types to support full tracebacks
* New traceback data type used across stl and ast
* Updates to tests
* fixes for error messaging in sym and some stl functions
2023-05-23 22:06:11 +00:00
6969ea63bc
usability improvements to env and def
...
* env prints variables and functions in seperate columns
* run/stl seperation of concerns significantly better
* def doesnt store lists or lambdas in the environment
2023-05-21 23:53:00 +00:00
c127118465
fully interactive shell
...
* Background task implementation
* Foreground an existing task implementation
* Documentation for both
* Refactors to signal handling, process pre-exec
2023-05-18 06:53:23 +00:00
09b032271b
small docs updates, add trailing slash to autocompleted directories
2023-05-16 10:58:06 -07:00
1ef0a534db
tab complete! yay!
...
Signed-off-by: Ava Hahn <ava@sunnypup.io>
2023-05-03 15:13:18 -07:00
c2cc8571bc
fix issue with env var to sym table sync
...
Signed-off-by: Ava Hahn <ava@sunnypup.io>
2023-05-03 15:04:54 -07:00
5afc2cc4a1
a few changes enclosed:
...
* documented deps
* mild string escaping
* corrected a misbehavior in sym
2023-04-19 21:03:26 -07:00
d7864ee628
load-to-string pulls out newline, also fix issue with nested calls
2023-04-19 18:24:15 -07:00
ee1ef9700d
cd function
...
Signed-off-by: Ava Hahn <ava@sunnypup.io>
2023-04-17 22:11:49 -07:00
db55c54dd3
main -> relish
2023-04-17 20:24:50 -07:00
014be6ece3
fix needless pg churn
2023-04-17 20:17:42 -07:00
e5f81ad604
shell pipe function prototype finished
2023-04-07 12:21:22 -07:00
9c0f88ec91
WIP early start on pipe command
2023-04-06 22:24:14 -07:00
d11545bc31
implement load-to-string, revert odd Cargo.toml mistake
2023-03-30 20:47:22 -07:00
dcbc855783
fixed permissions issue in load-with
2023-03-30 20:02:45 -07:00
e8cf59b7a7
implemented load-with.... still need docstring and to fix some write errors
2023-03-28 20:47:55 -07:00
ab14ba4b5e
circuit handles load commands better
...
Signed-off-by: Ava Hahn <ava@sunnypup.io>
2023-03-27 14:34:07 -07:00
921deb9e5e
put todo items into readme instead of posix module comment block
2023-03-27 11:32:12 -07:00
99cb9e5a2e
elementary shell behavior: can kick off a foreground process and
...
handle signals
2023-03-24 18:14:33 -07:00
a711b32730
shell fully configurable
2023-03-23 11:52:36 -07:00
1ce5fd3454
input function
2023-03-22 22:53:29 -07:00
df6b5b5f06
reformat some readme stuff
2023-03-20 23:11:29 -07:00
751388b04c
a bit better prompt printing
2023-03-20 23:02:33 -07:00
b638918a89
list contains implemented
2023-03-20 22:14:40 -07:00
da0709c4db
better echo
2023-03-20 21:21:42 -07:00
3f75157fac
got all the load script stuff done.
...
added script args to main shell
also added userlib tests to ci
2023-03-20 19:00:30 -07:00
381852b3bd
Implemented SymTable optimization for efficient variable updates
2023-03-20 17:16:44 -07:00
dcb2969b0a
* fixed and wrote test for lambda and function as arg case
...
* added license to userlib tests
* added map impl to userlib
* userlib tests now run and pass
* all args are evaluated individually
2023-03-20 16:22:51 -07:00
8a91560921
improvements to configuration system
2023-03-18 23:00:55 -07:00
34e77903a6
Add userlib tests
...
Document userlib in readme
extend example configuration to include userlib
2023-03-17 13:24:31 -07:00
1ee9ba55fb
Added USERLIB with prepend and set.
...
Added a q shortcut to quote
get-doc and set-doc no longer conditionally evaluate args
Fixed bug in let, documented potential performance improvements
upped default history to 5k lines
2023-03-17 13:06:27 -07:00
a01df6b7b2
undid eval tweaks, made tests for weird def cases
2023-03-17 12:21:42 -07:00
2dfe73de6b
variables defined using def in a let statement now escape local scope
...
test added as well.
2023-03-17 12:01:43 -07:00
3848d3bcfa
Eval enhancements. Rewrote store to be significantly better
2023-03-17 11:42:36 -07:00
Ava Hahn
20821057f2
complete all introductory documentation, except for the Easy Patterns
...
section
Also, removed some stray debug lines and added a printed newline
inbetween prompt and output
2023-03-16 15:14:24 -07:00
67af8bbd47
multiline shell, yay!
2023-03-15 21:55:10 -07:00
8efa1dbaad
Fully fledged lambdas, along with efficiency tweaks across the ast
2023-03-13 15:02:19 -07:00