def eval(self, ns): if eval(self.cond, ns): return eval(self.then, ns) elif self.else_: return eval(self.else_, ns) else: return None
def eval(self, ns): try: return eval(self.expr, ns) except: ex = sys.exc_info()[1] for ex_type_expr, handler in self.handlers: ex_type = eval(ex_type_expr, ns) if isinstance(ex, ex_type): return eval(handler, ns) raise
def eval_all(exprs, ns): result = None for e in exprs: result = eval(e, ns) return result
def eval(self, ns): return ns.define_global(self.symbol.name, eval(self.value, ns))
def eval(self, ns): if isinstance(self.exception, str): raise Exception(self.exception) else: raise eval(self.exception, ns)