aboutsummaryrefslogtreecommitdiff
path: root/interpreter.py
diff options
context:
space:
mode:
authormryouse2022-05-24 03:37:48 +0000
committermryouse2022-05-24 03:37:48 +0000
commit69cfd5883b6898dc613471d2639aa22ed5e8ad6f (patch)
tree0dc7c856d62fab6b73e6c02ecf505a6339160118 /interpreter.py
parent836f13d9faf85d5bb67549d14047e5835cf33da8 (diff)
bugfix: only try to access .value on a Literal
Diffstat (limited to 'interpreter.py')
-rw-r--r--interpreter.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/interpreter.py b/interpreter.py
index 529993a..cda4c62 100644
--- a/interpreter.py
+++ b/interpreter.py
@@ -303,7 +303,11 @@ def interpretLambda(symbol, args, env):
GLOBALS.register("lambda", Builtin(interpretLambda))
def interpretToString(symbol, args, env):
- return Literal(str(evaluate(args[0], env).value))
+ ev = evaluate(args[0], env)
+ if isinstance(ev, Literal):
+ return Literal(str(ev.value))
+ else:
+ return Literal(f"{ev}")
GLOBALS.register("->string", Builtin(interpretToString, 1))