; My Standard Scheme "Prelude" ; Version for kawa-1.68 ; $Id$ ; Very Kawa-specific definitions (defmacro define-macro (bindings . body) (if (pair? bindings) ; form (define-macro (foo x) body) `(defmacro ,(car bindings) ,(cdr bindings) ,@body) ; form (define-macro foo (lambda (x) body)) (let ((rest (gentemp))) `(defmacro ,bindings ,rest (apply ,@body ,rest))))) ; currently Kawa documentation states cannot use macro defined by ; defmacro in same file. Oleg's code does this all the time... (display "Must also (load \"myenv-kawa.scm\")") ;(load "myenv-kawa.scm")