Ejemplo n.º 1
0
 def testEachForm(self):
   eq_(eval(tag_loop_label(EachForm(i, range(3), [prin(i)]))), None)
Ejemplo n.º 2
0
 def testEachForm2(self):
   eq_(eval(tag_loop_label(EachForm((i, j), zip(range(3), range(3)), [prin(i, j)]))), None)
Ejemplo n.º 3
0
 def testLoopWhen(self):
   eq_(eval(tag_loop_label(let([(i,3)], LoopWhenForm((set(i, sub(i, 1)), prin(i)), 
                                    gt(i,0))))), None)
Ejemplo n.º 4
0
 def testLoopUntil(self):
   eq_(eval(tag_loop_label(let([(i,3)], LoopUntilForm((set(i, sub(i, 1)), prin(i)), 
                                    eq(i,0))))), None)
Ejemplo n.º 5
0
def eval(code):
    code = preparse(code)
    code = tag_loop_label(code)
    return dao_eval(code)
Ejemplo n.º 6
0
 def testLoopTimes(self):
   eq_(eval(tag_loop_label(let([(i,3)], LoopTimesForm(3, (set(i, sub(i, 1)), prin(i)))))), None)
Ejemplo n.º 7
0
 def test_loop2(self):
     print tag_loop_label(LoopTimesForm(3, (1, next(), 2)))
Ejemplo n.º 8
0
 def preprocess(self):
     return special.begin(*tag_loop_label(preparse(self.code)))
Ejemplo n.º 9
0
 def test_loop1(self):
     print tag_loop_label(LoopTimesForm(3, (write(i), exit())))
Ejemplo n.º 10
0
 def test_loop2(self):
     eq_(tag_loop_label(LoopForm((1, next(), 2))), block("$1", 1, continue_block("$1"), 2, continue_block("$1")))
Ejemplo n.º 11
0
 def test_loop1(self):
     eq_(tag_loop_label(LoopForm((1, 2, exit()))), block("$1", 1, 2, exit_block("$1"), continue_block("$1")))
Ejemplo n.º 12
0
 def preprocess(self):
   return special.begin(*tag_loop_label(preparse(self.code)))
Ejemplo n.º 13
0
def eval(code):
  code = preparse(code)
  code = tag_loop_label(code)
  return dao_eval(code)