Пример #1
0
 def test_counter_diff_environments(self):
     env1 = Env()
     start_counter = env1.next_id()
     env2 = Env()
     next_counter = env2.next_id()
     last_counter = env1.next_id()
     self.assertEqual(next_counter, start_counter + 1)
     self.assertEqual(last_counter, start_counter + 2)
Пример #2
0
def gensym(prefix='G__'):
    return Symbol(prefix + str(Env.next_id()))
Пример #3
0
 def eval(self, env):
     if SyntaxQuote.ID not in env:
         env = env.extend(SyntaxQuote.ID, Env.next_id())
     return self.expr.quoted_form(env)
Пример #4
0
 def test_counter_increments(self):
     env = Env()
     start_counter = env.next_id()
     next_counter = env.next_id()
     self.assertEqual(next_counter, start_counter + 1)
Пример #5
0
 def eval(self, env):
     if SyntaxQuote.ID not in env:
         env = env.extend(SyntaxQuote.ID, Env.next_id())
     return self.expr.quoted_form(env)
Пример #6
0
def gensym(prefix='G__'):
    return Symbol(prefix + str(Env.next_id()))