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))
Exemple #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)
Exemple #8
0
def procedureParameters(p):
    return pair.cadr(p)
Exemple #9
0
def primitiveImplementation(proc):
    return pair.cadr(proc)
Exemple #10
0
def lambdaParameters(exp):
    return pair.cadr(exp)
Exemple #11
0
def ifPredicate(exp):
    return pair.cadr(exp)
Exemple #12
0
def definitionValue(exp):
    if isSymbol(pair.cadr(exp)):
        return pair.caddr(exp)
    return makeLambda(pair.cdr(pair.cadr(exp)),
                      pair.cddr(exp))
Exemple #13
0
def definitionVariable(exp):
    if isSymbol(pair.cadr(exp)):
        return pair.cadr(exp)
    return pair.car(pair.cadr(exp))
Exemple #14
0
def assignmentVariable(exp):
    return pair.cadr(exp)
def lambdaParameters(exp):
    return pair.cadr(exp)
Exemple #16
0
def continuationImplementation(proc):
    return pair.cadr(proc)
def ifPredicate(exp):
    return pair.cadr(exp)
Exemple #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)
Exemple #22
0
def letBindings(exp):
    return pair.cadr(exp)