sicp/4_1.rkt

30 lines
730 B
Racket

#lang sicp
(define (list-of-values-lr exps env)
(if (no-operands? exps)
'()
(let* ((first (eval (first-operand exps) env))
(rest (list-of-values (rest-operands exps) env)))
(cons first rest))))
(#%require (only racket/trace trace-define))
(trace-define (list-of-values-rl exps env)
(if (no-operands? exps)
'()
(let* ((rest (list-of-values (rest-operands exps) env))
(first (eval (first-operand exps) env)))
(cons first rest))))
(define list-of-values list-of-values-rl)
(#%require (all-except "ch4-mceval.rkt" list-of-values))
(#%require (only racket/base module+))
(module+ main
(define the-global-environment (setup-environment))
(driver-loop)
)