Ejemplo n.º 1
0
 def __repr__(self): 
   if run_mode() is interactive:
     code = interactive_parser().parse(self)
     code = interactive_tagger().tag_loop_label(code)
     code = to_sexpression(code)
     result = interactive_solver().eval(code)
     return repr(result) if result is not None else ''
   else: return self.____repr____()
Ejemplo n.º 2
0
 def __init__(self, name, grammar):
   self.__form_name__ = name
   if grammar is None:
     self.__form_grammar__ = None
   else:
     #print grammar
     self.__form_grammar__ = to_sexpression(preparse(or_p(grammar, syntax_error)))
   self.__operator_data__ = []
Ejemplo n.º 3
0
 def __repr__(self): 
   if run_mode() is interactive:
     code = interactive_parser().parse(self)
     code = interactive_tagger().tag_loop_label(code)
     code = to_sexpression(code)
     result = interactive_solver().eval(code)
     return repr(result) if result is not None else ''
   return '%s(%s)'%(self.operator, 
               ','.join([repr(e) for e in self.operand]))
Ejemplo n.º 4
0
 def __repr__(self):
   if run_mode() is interactive:
     code = interactive_parser().parse(self)
     code = interactive_tagger().tag_loop_label(code)
     code = to_sexpression(code)
     result = interactive_solver().eval(code)
     return repr(result) if result is not None else ''
   x = _operator_repr(self.operand[0], self.operator)
   y = _operator_repr(self.operand[1], self.operator)
   return '%s%s%s'%(x, self.operator.symbol, y)
Ejemplo n.º 5
0
def solve(exp):
  code = interactive_parser().parse(exp)
  code = interactive_tagger().tag_loop_label(code)
  code = to_sexpression(code)
  return interactive_solver().solve(code)
Ejemplo n.º 6
0
 def to_sexpression(self):
   return (set_list, self.vars, to_sexpression(self.exp))
Ejemplo n.º 7
0
 def to_sexpression(self):
   return (catch, to_sexpression(self.tag)) +to_sexpression(self.body)
Ejemplo n.º 8
0
 def to_sexpression(self):
   return (block, self.label)+to_sexpression(self.body)
Ejemplo n.º 9
0
 def to_sexpression(self):
   return (set, self.var, to_sexpression(self.exp))
Ejemplo n.º 10
0
 def to_sexpression(self):
   return (self.__class__, self.vars)+to_sexpression(self.body)
Ejemplo n.º 11
0
 def to_sexpression(self):
   return (OnForm,)+to_sexpression(self.form, self.body, self.var)
Ejemplo n.º 12
0
def preparse_to_sexpression(exp):
    return to_sexpression(preparse(exp))
Ejemplo n.º 13
0
 def to_sexpression(self):
   return (to_sexpression(self.operator),)+tuple(to_sexpression(x) for x in self.operand)
Ejemplo n.º 14
0
def preparse_to_sexpression(exp):
  return to_sexpression(preparse(exp))
Ejemplo n.º 15
0
def solve(exp):
    code = interactive_parser().parse(exp)
    code = interactive_tagger().tag_loop_label(code)
    code = to_sexpression(code)
    return interactive_solver().solve(code)
Ejemplo n.º 16
0
 def to_sexpression(self):
   return (quote, to_sexpression(self.exp))
Ejemplo n.º 17
0
 def to_sexpression(self):
   cases = dict((k, to_sexpression(tuple(v))) for k, v in self.cases.items())
   return (CaseForm,)+to_sexpression((self.test, cases, self.els))
Ejemplo n.º 18
0
def eval(exp):
    exp = preparse(exp)
    sexp = to_sexpression(exp)
    return make_solver().eval(sexp)
Ejemplo n.º 19
0
 def to_sexpression(self):
   self.bindings = to_sexpression(self.bindings)
   self.body = to_sexpression(self.body)
   return (self.__class__, self.bindings)+self.body
Ejemplo n.º 20
0
def eval(exp):
  exp = preparse(exp)
  sexp = to_sexpression(exp)
  return make_solver().eval(sexp)
Ejemplo n.º 21
0
 def to_sexpression(self):
   return (self.__class__,)+to_sexpression(self.rules)
Ejemplo n.º 22
0
 def to_sexpression(self):
   return (set_global, self.var, to_sexpression(self.exp))
Ejemplo n.º 23
0
 def to_sexpression(self):
   return (module, )+to_sexpression(self.body)
Ejemplo n.º 24
0
 def to_sexpression(self):
   return (begin, )+to_sexpression(self.exps)
Ejemplo n.º 25
0
 def to_sexpression(self):
   return (exit_block,)+to_sexpression((self.label, self.form))
Ejemplo n.º 26
0
 def to_sexpression(self):
   return (if_, )+to_sexpression((self.test, self.exp1, self.exp2))
Ejemplo n.º 27
0
 def to_sexpression(self):
   return (throw,)+to_sexpression((self.tag, self.form))
Ejemplo n.º 28
0
 def to_sexpression(self):
   return (iff, to_sexpression(self.clauses), to_sexpression(self.els))
Ejemplo n.º 29
0
 def to_sexpression(self):
   return (unwind_protect, to_sexpression(self.form))+to_sexpression(self.cleanup)
Ejemplo n.º 30
0
 def to_sexpression(self):
   return (pytry,)+to_sexpression((self.body, self.exception, self.ex_clause, self.final))