]> git.rkrishnan.org Git - sicp.git/commitdiff
- More functions like =, >, < from underlying scheme
authorRamakrishnan Muthukrishnan <vu3rdd@gmail.com>
Mon, 2 Jan 2012 08:57:24 +0000 (14:27 +0530)
committerRamakrishnan Muthukrishnan <vu3rdd@gmail.com>
Mon, 2 Jan 2012 08:57:24 +0000 (14:27 +0530)
- renamed setup-environment to make-environment

src/sicp/metacircular2.rkt

index 06209d34877ec7e894759252aab134725dcbae8e..83d89fac906b406c429a1b99f1305d52d51f2496 100644 (file)
@@ -61,7 +61,7 @@
 
 (define (lookup-variable-value var env)
   (if (eq? env the-empty-environment)
-      (error "unbound variable:" var)
+      (error "unbound variable: " var)
       (let ([frame (first-frame env)])
         (let ([value (hash-ref frame var (lambda () (lookup-variable-value var (enclosing-environment env))))])
           (if (eq? value '*unassigned*)
@@ -70,7 +70,7 @@
 
 (define (set-variable-value! var val env)
   (if (eq? env the-empty-environment)
-      (error "unbound variable")
+      (error "unbound variable: " var)
       (let ([frame (first-frame env)])
         (if (hash-has-key? frame var)
             (hash-set! frame var val)
@@ -95,7 +95,9 @@
         (list '- -)
         (list '* *)
         (list '/ /)
-        (list '= =)))
+        (list '= =)
+        (list '> >)
+        (list '< <)))
 
 (define (primitive-procedure-names)
   (map car primitive-procedures))
    (primitive-implementation proc) args))
 
 ;; global env
-(define (setup-environment)
+(define (make-environment)
   (let ((initial-env
          (extend-environment (primitive-procedure-names)
                              (primitive-procedure-objects)
     (define-variable! 'false false initial-env)
     initial-env))
 
-(define the-global-environment (setup-environment))
+(define the-global-environment (make-environment))
 
 ;; application
 (define (list-of-values exps env)