def definitionValue(exp):
    if isSymbol(pair.cadr(exp)):
        return pair.caddr(exp)
    return makeLambda(pair.cdr(pair.cadr(exp)), pair.cddr(exp))
def assignmentVariable(exp):
    return pair.cadr(exp)
def definitionVariable(exp):
    if isSymbol(pair.cadr(exp)):
        return pair.cadr(exp)
    return pair.car(pair.cadr(exp))
Ejemplo n.º 4
0
def letBindingValues(bindings):
    if pair.isNull(bindings): return pair.list()
    return pair.cons(pair.cadr(pair.car(bindings)),
                           letBindingValues(pair.cdr(bindings)))
def letBindingValues(bindings):
    if pair.isNull(bindings): return pair.list()
    return pair.cons(pair.cadr(pair.car(bindings)),
                     letBindingValues(pair.cdr(bindings)))
def procedureParameters(p):
    return pair.cadr(p)
def continuationImplementation(proc):
    return pair.cadr(proc)
Ejemplo n.º 8
0
def procedureParameters(p):
    return pair.cadr(p)
Ejemplo n.º 9
0
def primitiveImplementation(proc):
    return pair.cadr(proc)
Ejemplo n.º 10
0
def lambdaParameters(exp):
    return pair.cadr(exp)
Ejemplo n.º 11
0
def ifPredicate(exp):
    return pair.cadr(exp)
Ejemplo n.º 12
0
def definitionValue(exp):
    if isSymbol(pair.cadr(exp)):
        return pair.caddr(exp)
    return makeLambda(pair.cdr(pair.cadr(exp)),
                      pair.cddr(exp))
Ejemplo n.º 13
0
def definitionVariable(exp):
    if isSymbol(pair.cadr(exp)):
        return pair.cadr(exp)
    return pair.car(pair.cadr(exp))
Ejemplo n.º 14
0
def assignmentVariable(exp):
    return pair.cadr(exp)
def lambdaParameters(exp):
    return pair.cadr(exp)
Ejemplo n.º 16
0
def continuationImplementation(proc):
    return pair.cadr(proc)
def ifPredicate(exp):
    return pair.cadr(exp)
Ejemplo n.º 18
0
def textOfUnquotation(exp):
    return pair.cadr(exp)
def primitiveImplementation(proc):
    return pair.cadr(proc)
def letBindings(exp):
    return pair.cadr(exp)
def textOfUnquotation(exp):
    return pair.cadr(exp)
Ejemplo n.º 22
0
def letBindings(exp):
    return pair.cadr(exp)