aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormryouse2022-07-06 00:21:27 +0000
committermryouse2022-07-06 00:21:27 +0000
commitcdb50f80db059deee785bfccef7f2c9c333ea063 (patch)
tree2fb5270451093a0320e168685991a7512ebe2802
parentcf0ae625ddc9076e0ca02079b8d461de22244998 (diff)
implement string length function
-rw-r--r--neb/std/strings.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/neb/std/strings.py b/neb/std/strings.py
index 7e3177e..0da64da 100644
--- a/neb/std/strings.py
+++ b/neb/std/strings.py
@@ -47,3 +47,8 @@ def interpretRestChar(symbol, args, env, ns):
return String(args[0].value[1:])
STRINGS.register("rest-char", Builtin("rest-char", interpretRestChar, [Arg("string", TypeEnum.STRING)], return_type=Type(":string")))
+
+def interpretLength(symbol, args, env, ns):
+ return Int(len(args[0].value))
+
+STRINGS.register("length", Builtin("length", interpretLength, [Arg("string", TypeEnum.STRING)], return_type=Type(":int")))