aboutsummaryrefslogtreecommitdiff
path: root/neb/std/repl.py
diff options
context:
space:
mode:
authormryouse2022-06-26 01:45:33 +0000
committermryouse2022-06-26 01:45:33 +0000
commitc866c3f7d27c89d2c5105760c112d20c86817165 (patch)
tree5b8083a5c84d782e61ea74c29981633dd6e41399 /neb/std/repl.py
parent182a05b85113631a611169a6724162ae9247b55e (diff)
implement funcs
Diffstat (limited to 'neb/std/repl.py')
-rw-r--r--neb/std/repl.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/neb/std/repl.py b/neb/std/repl.py
index 43b514e..21f4b55 100644
--- a/neb/std/repl.py
+++ b/neb/std/repl.py
@@ -17,6 +17,12 @@ def interpretSymbols(symbol, args, env, ns):
REPL.register("symbols", Builtin("symbols", interpretSymbols, [], return_type=Type(":list")))
+def interpretFuncs(symbol, args, env, ns):
+ keys = [Symbol(k, -1) for k,v in env.environment.items() if isinstance(v, Builtin)]
+ return List(keys)
+
+REPL.register("funcs", Builtin("funcs", interpretFuncs, [], return_type=Type(":list")))
+
def interpretUserSymbols(symbol, args, env, ns):
keys = [Symbol(k, -1) for k,v in env.environment.items() if isinstance(v, UserFunction) or isinstance(v, Literal)]
return List(keys)