def __init__(self, ast_node):
     Node.__init__(self)
     self.car = ast_node.car.cdr
     self.cdr = ast_node.cdr
     assert type(self.car) == AbstractSyntaxTree.IdentifierNode
     self.name = self.car.name
     self.lambda_expr =\
         AbstractSyntaxTree.LambdaNode(self.car.cdr)
     self.car.cdr = self.lambda_expr
 def __init__(self, ast_node):
     Node.__init__(self)
     self.car = ast_node
     self.param_list = ast_node
     assert type(self.param_list) == AbstractSyntaxTree.ListNode
     self.body_expr = ast_node.cdr
 def __init__(self, ast_node):
     Node.__init__(self)
     self.car = ast_node.car.cdr
     self.predicate_expr = self.car
     self.left_expr = ast_node.car.cdr.cdr
     self.right_expr = ast_node.car.cdr.cdr.cdr
 def __init__(self, parse_node):
     Node.__init__(self)
     self.cdr = parse_node.cdr
 def __init__(self, ast_node):
     Node.__init__(self)
     self.name = ast_node.car.name
     self.car = ast_node.car.cdr
     self.cdr = ast_node.cdr
 def __init__(self, parse_node):
     Node.__init__(self)
     operator_node = parse_node.car
     self.name = parse_node.value
 def __init__(self, ast_node=None):
     Node.__init__(self)
     if ast_node:
         self.car = ast_node.car
         self.cdr = ast_node.cdr
 def __init__(self, parse_node):
     Node.__init__(self)
     self.value = value
 def __init__(self, parse_node):
     Node.__init__(this)
     this.value = value
 def __init__(self, parse_node):
     Node.__init__(self)
     self.name = parse_node.value
 def __init__(self, parse_node):
     Node.__init__(self)