diff options
Diffstat (limited to 'interpreter.py')
| -rw-r--r-- | interpreter.py | 8 | 
1 files changed, 8 insertions, 0 deletions
| diff --git a/interpreter.py b/interpreter.py index 03b5c00..c491150 100644 --- a/interpreter.py +++ b/interpreter.py @@ -357,6 +357,14 @@ GLOBALS.register("strip", Builtin(interpretStrip, 1))  #  - string->int and string->float  #  - split a string by a given field  #  - get the length of a list +def interpretListLength(symbol, args, env): +    ev = evaluate(args[0], env) +    if not isinstance(ev, List): +        raise Exception("'first' expects a List") +    return len(ev.args) + +GLOBALS.register("list-length", Builtin(interpretListLength, 1)) +      #  - first/rest of list  def interpretFirst(symbol, args, env):      ev = evaluate(args[0], env) | 
