Commit graph

24 commits

Author SHA1 Message Date
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
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
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
b0bd369c1d
WIP lambda
* typesystem extended
* docstrings and callback
* tests defined, not implemented
2023-03-12 20:29:39 -07:00
Ava Hahn
c74d6f5ddf
Added LT, GT, LTE, and GTE functions, and big test coverage 2023-03-07 22:01:01 -08:00
Ava Hahn
7fd47c1812
added list len, front, and back 2023-03-07 14:51:27 -08:00
Ava Hahn
f8ab31e9aa
rustfmt on recent additions
Signed-off-by: Ava Hahn <ava@aidanis.online>
2023-03-06 15:53:12 -08:00
Ava Hahn
f22d807b57
added env function and test 2023-03-06 15:50:02 -08:00
Ava Hahn
de29bbf950
help function displays values not
Signed-off-by: Ava Hahn <ava@aidanis.online>
2023-03-06 15:12:59 -08:00
Ava Hahn
ca9f755d50
rustfmt previous commit 2023-03-05 22:37:13 -08:00
Ava Hahn
dc6342bc74
Several changes, see commit msg
* clean up all tests
* bugfix for zero value functions, and test
* removed expand function, put in snippets
* added doc strings to Symbol type
* added doc strings to symbol declarations
* implemented display for Args type
* wrote a help function
* wrote docstrings for all builtins and config vars
2023-03-05 22:18:49 -08:00
Ava Hahn
c1d83a6285
finished let forms
Signed-off-by: Ava Hahn <ava@aidanis.online>
2023-03-01 15:17:50 -08:00
Ava Hahn
bc09cb07b1
rustfmt
Signed-off-by: Ava Hahn <ava@aidanis.online>
2023-03-01 11:47:37 -08:00
Ava Hahn
ecbc47d4fe
fix prompt 2023-03-01 11:33:30 -08:00
Ava Hahn
09e3546ba6
implement basic control flow, error handling from functions, many tests
Signed-off-by: Ava Hahn <ava@aidanis.online>
2023-02-27 22:53:54 -08:00
Ava Hahn
ae365ad63c
WIP commit to re-add and refactor config, repl, and library code
Signed-off-by: Ava Hahn <ava@aidanis.online>
2023-02-27 17:30:49 -08:00
Ava Hahn
93a1e06a53
all tests green
Signed-off-by: Ava Hahn <ava@aidanis.online>
2023-02-25 23:36:30 -08:00
Ava Hahn
82854a58f8
expand func call tests
Signed-off-by: Ava Hahn <ava@aidanis.online>
2023-02-24 16:05:10 -08:00
Ava Hahn
c70cbc701d
implement hideously inefficient fix to work around rust
Signed-off-by: Ava Hahn <ava@aidanis.online>
2023-02-24 15:09:00 -08:00
Ava Hahn
a1e19a19d9
simplify eval, add member function to symtable to call a symbol 2023-02-23 23:01:47 -08:00
Ava Hahn
e055f26e90
replace mutex with rwlock
Signed-off-by: Ava Hahn <ava@aidanis.online>
2023-02-20 19:42:48 -08:00
Ava Hahn
7555a90328
significant refactor and simplification 2023-02-17 21:06:52 -08:00