Now usable
This commit is contained in:
@@ -1,58 +1,58 @@
|
||||
;;
|
||||
;; let testing
|
||||
;;
|
||||
(assert (not (bound? var1)))
|
||||
(assert (not (bound? var2)))
|
||||
(assert (not (bound? var3)))
|
||||
(let ((var1 1)
|
||||
(var2 [1 2 3])
|
||||
(var3 {1 2 3 4}))
|
||||
(assert (bound? var1))
|
||||
(assert (bound? var2))
|
||||
(assert (bound? var3))
|
||||
(assert (= var1 1))
|
||||
(assert (= var2 [1 2 3]))
|
||||
(assert (= var3 {1 2 3 4})))
|
||||
;; (assert (not (bound? var1)))
|
||||
;; (assert (not (bound? var2)))
|
||||
;; (assert (not (bound? var3)))
|
||||
;; (let ((var1 1)
|
||||
;; (var2 [1 2 3])
|
||||
;; (var3 {1 2 3 4}))
|
||||
;; (assert (bound? var1))
|
||||
;; (assert (bound? var2))
|
||||
;; (assert (bound? var3))
|
||||
;; (assert (= var1 1))
|
||||
;; (assert (= var2 [1 2 3]))
|
||||
;; (assert (= var3 {1 2 3 4})))
|
||||
|
||||
(assert (not (bound? var1)))
|
||||
(assert (not (bound? var2)))
|
||||
(assert (not (bound? var3)))
|
||||
;; (assert (not (bound? var1)))
|
||||
;; (assert (not (bound? var2)))
|
||||
;; (assert (not (bound? var3)))
|
||||
|
||||
(assert (= (let ((val 'sym))
|
||||
val)
|
||||
'sym))
|
||||
;; (assert (= (let ((val 'sym))
|
||||
;; val)
|
||||
;; 'sym))
|
||||
|
||||
(assert (= (let ()
|
||||
'sym)
|
||||
'sym))
|
||||
;;
|
||||
;; Quasiquote testing
|
||||
;;
|
||||
(assert (= '() `()))
|
||||
;; (assert (= (let ()
|
||||
;; 'sym)
|
||||
;; 'sym))
|
||||
;; ;;
|
||||
;; ;; Quasiquote testing
|
||||
;; ;;
|
||||
;; (assert (= '() `()))
|
||||
|
||||
(assert (= '(1 1 2)
|
||||
`(1 1 2)))
|
||||
;; (assert (= '(1 1 2)
|
||||
;; `(1 1 2)))
|
||||
|
||||
(assert (= '(1 1 2)
|
||||
`(1 ,1 2)))
|
||||
;; (assert (= '(1 1 2)
|
||||
;; `(1 ,1 2)))
|
||||
|
||||
(assert (= '(1 1 2)
|
||||
`(1 ,(- 10 9) 2)))
|
||||
;; (assert (= '(1 1 2)
|
||||
;; `(1 ,(- 10 9) 2)))
|
||||
|
||||
(assert (= '(1 1 2)
|
||||
`(1 ,@(list 1 2))))
|
||||
;; (assert (= '(1 1 2)
|
||||
;; `(1 ,@(list 1 2))))
|
||||
|
||||
(let ((body '(2 3)))
|
||||
(assert (= '(1 2 3)
|
||||
`(1 ,@body))))
|
||||
;; (let ((body '(2 3)))
|
||||
;; (assert (= '(1 2 3)
|
||||
;; `(1 ,@body))))
|
||||
|
||||
(let ((body '((define a 1)
|
||||
(define b 2)))
|
||||
(imports '()))
|
||||
(let ((expr `(begin ,@(map (lambda (x) `(import ,x)) imports) ,@body)))
|
||||
(assert (= '(begin
|
||||
(define a 1)
|
||||
(define b 2))))
|
||||
(assert (= '(begin (define a 1) (define b 2)) expr))
|
||||
(eval expr)
|
||||
(assert (= a 1))
|
||||
(assert (= b 2))))
|
||||
(assert (= b 2))
|
||||
))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user