1 | ; Initialization file for TinySCHEME 1.41 |
1 | ; Initialization file for TinySCHEME 1.41 |
|
|
2 | |
|
|
3 | (gc-verbose #t) |
2 | |
4 | |
3 | ;;;; Utility to ease macro creation |
5 | ;;;; Utility to ease macro creation |
4 | (define (macro-expand form) |
6 | (define (macro-expand form) |
5 | ((eval (get-closure-code (eval (car form)))) form)) |
7 | ((eval (get-closure-code (eval (car form)))) form)) |
6 | |
8 | |
… | |
… | |
682 | ((not) (if (not (null? (cddr condition))) |
684 | ((not) (if (not (null? (cddr condition))) |
683 | (error "cond-expand : 'not' takes 1 argument") |
685 | (error "cond-expand : 'not' takes 1 argument") |
684 | (not (cond-eval (cadr condition))))) |
686 | (not (cond-eval (cadr condition))))) |
685 | (else (error "cond-expand : unknown operator" (car condition))))))) |
687 | (else (error "cond-expand : unknown operator" (car condition))))))) |
686 | |
688 | |
687 | (gc-verbose #t) |
|
|
688 | |
|
|
689 | ; compatibility functions added by schmorp@schmorp.de |
689 | ; compatibility functions added by schmorp@schmorp.de |
690 | (macro (defmacro dform) |
690 | (macro (defmacro dform) |
691 | (let ((name (cadr dform)) (formals (caddr dform)) (body (cdddr dform))) |
691 | (let ((name (cadr dform)) (formals (caddr dform)) (body (cdddr dform))) |
692 | `(define-macro (,name . ,formals) ,@body))) |
692 | `(define-macro (,name . ,formals) ,@body))) |
693 | |
693 | |
… | |
… | |
825 | |
825 | |
826 | ;(define *compile-hook* sc-expand) |
826 | ;(define *compile-hook* sc-expand) |
827 | |
827 | |
828 | (load "test.scm") |
828 | (load "test.scm") |
829 | |
829 | |
|
|
830 | (gc-verbose #f) |