def __listOfValues(self, exprs, env): res = [] for e in exprs.raw: if isinstance(e, list): evaled = schemeEval(Expression.fromPythonList(e), env) else: evaled = schemeEval(Expression([e]), env) res.append(evaled) return res
def eval(self, env): env.set( self.__assignmentVariable(), schemeEval(self.__assignmentValue(), env) ) return "ok"
def eval(self, env): return schemeApply( schemeEval(self.__operator(), env), self.__listOfValues(self.__operands(), env) )
def eval(self, env): if schemeEval(self.__ifPredicate(), env): return schemeEval(self.__ifConsequent(), env) else: return schemeEval(self.__ifAlternative(), env)
def eval(self, env): env.define( self.__definitionVariable(), schemeEval(self.__definitionValue(), env) ) return "ok"
def eval(self, env): return schemeApply(schemeEval(self.__operator(), env), self.__listOfValues(self.__operands(), env))
def eval(self, env): env.define(self.__definitionVariable(), schemeEval(self.__definitionValue(), env)) return "ok"
def eval(self, env): env.set(self.__assignmentVariable(), schemeEval(self.__assignmentValue(), env)) return "ok"