Exemplo n.º 1
0
def binding_values(expr):
    def inner(expr):
        if expr is EmptyList:
            return EmptyList
        return cons(cadar(expr), inner(cdr(expr)))

    return inner(cadr(expr))
Exemplo n.º 2
0
def binding_values(expr):
    def inner(expr):
        if expr is EmptyList:
            return EmptyList
        return cons(cadar(expr), inner(cdr(expr)))

    return inner(cadr(expr))
Exemplo n.º 3
0
def definition_value(expr):
    if is_symbol(cadr(expr)):
        return caddr(expr)

    return make_lambda(cdadr(expr), cddr(expr))
Exemplo n.º 4
0
def definition_variable(expr):
    if is_symbol(cadr(expr)):
        return cadr(expr)

    return caadr(expr)
Exemplo n.º 5
0
def assignment_variable(expr):
    return cadr(expr)
Exemplo n.º 6
0
def lambda_parameters(expr):
    return cadr(expr)
Exemplo n.º 7
0
def if_predicate(expr):
    return cadr(expr)
Exemplo n.º 8
0
def primitive_implementation(expr):
    return cadr(expr)
Exemplo n.º 9
0
def procedure_parameters(expr):
    return cadr(expr)
Exemplo n.º 10
0
def definition_value(expr):
    if is_symbol(cadr(expr)):
        return caddr(expr)

    return make_lambda(cdadr(expr), cddr(expr))
Exemplo n.º 11
0
def definition_variable(expr):
    if is_symbol(cadr(expr)):
        return cadr(expr)

    return caadr(expr)
Exemplo n.º 12
0
def lambda_parameters(expr):
    return cadr(expr)
Exemplo n.º 13
0
def assignment_variable(expr):
    return cadr(expr)
Exemplo n.º 14
0
def text_of_quotation(expr):
    return cadr(expr)