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)
def gensym(prefix='G__'): return Symbol(prefix + str(Env.next_id()))
def eval(self, env): if SyntaxQuote.ID not in env: env = env.extend(SyntaxQuote.ID, Env.next_id()) return self.expr.quoted_form(env)
def test_counter_increments(self): env = Env() start_counter = env.next_id() next_counter = env.next_id() self.assertEqual(next_counter, start_counter + 1)
def eval(self, env): if SyntaxQuote.ID not in env: env = env.extend(SyntaxQuote.ID, Env.next_id()) return self.expr.quoted_form(env)
def gensym(prefix='G__'): return Symbol(prefix + str(Env.next_id()))