diff options
author | bnewbold <bnewbold@robocracy.org> | 2016-04-26 00:20:30 -0400 |
---|---|---|
committer | bnewbold <bnewbold@robocracy.org> | 2016-04-26 00:20:30 -0400 |
commit | 2e5ae3f0c26dcf3a64a1ae39b00690a73c9084bd (patch) | |
tree | b3ebb05ede6711c060605bf9a754fc6825ccf830 /minimal.scm | |
parent | ef9ee326260a902f600a2a83fbb785ee935ac904 (diff) | |
download | spectrum-2e5ae3f0c26dcf3a64a1ae39b00690a73c9084bd.tar.gz spectrum-2e5ae3f0c26dcf3a64a1ae39b00690a73c9084bd.zip |
rust: have car and cdr handle 'quote' (hack)
Diffstat (limited to 'minimal.scm')
-rw-r--r-- | minimal.scm | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/minimal.scm b/minimal.scm index 6e4c3c4..5c953e6 100644 --- a/minimal.scm +++ b/minimal.scm @@ -20,7 +20,7 @@ (define first (lambda (p) (car p))) -(define second +(define second (lambda (p) (car (cdr p)))) (define third @@ -58,7 +58,7 @@ (lambda (name table table-f) (cond ((null? table) (table-f name)) - (else (lookup-in-entry name + (else (lookup-in-entry name (car table) (lambda (n) (lookup-in-table n (cdr table) table-f))))))) @@ -105,9 +105,9 @@ ; need generic true/false booleans, a number type, and a symbol type ; also need a mutable "table" collection (define *const - (lambda (e table) - (cond - ((number? e) e) + (lambda (e table) + (cond + ((number? e) e) ((eq? e #t) #t) ((eq? e #f) #f) (else (build (quote builtin) e))))) |