move inv into the standard library

master
cynic 3 years ago
parent 291e61ed8d
commit 9c0ba1801a
  1. 2
      lib.py
  2. 5
      lib/booleans.klambda

@ -80,8 +80,6 @@ def execute(program):
return reduce(lambda a, b: (a[0], a[1]/b[1]), subs[1:]) return reduce(lambda a, b: (a[0], a[1]/b[1]), subs[1:])
elif ctx[0] == _ident("%"): elif ctx[0] == _ident("%"):
return (subs[1][0], subs[1][1]%subs[2][1]) return (subs[1][0], subs[1][1]%subs[2][1])
elif ctx[0] == _ident("!"):
return ("number", 0.0 if _truthy(subs[1]) else 1.0)
elif ctx[0] == _ident("=="): elif ctx[0] == _ident("=="):
return ("number", 1.0 if subs[1] == subs[2] else 0.0) return ("number", 1.0 if subs[1] == subs[2] else 0.0)
elif ctx[0] == _ident("="): elif ctx[0] == _ident("="):

@ -1,2 +1,7 @@
(def true 1) (def true 1)
(def false 0) (def false 0)
(def ! (lambda (val)
(cond (val)
0
1)))
Loading…
Cancel
Save