procgen  Diff

Differences From Artifact [abec99f409]:

To Artifact [ad02b3f2ba]:


     1      1   ; [ʞ] lisp-macro
     2         -; enable use of the define-macro syntax
     3         -; - example -
     4         -; 		(define-macro (if-or-f . body)
            2  +;  ~ lexi hale <lexi@hale.su>
            3  +;  © affero general public license
            4  +;  > (load "lib/lisp-macro.scm")
            5  +
            6  +; enable use of the define-macro syntax in chicken scheme
            7  +; ex:	(define-macro (if-or-f . body)
     5      8   ;			`(if ,(car body) ,(cadr body) #f))
     6      9   
     7     10   (define-syntax define-macro
     8     11   	(er-macro-transformer (lambda (exp r c)
     9     12   		`(define-syntax ,(caadr exp)
    10     13   			(er-macro-transformer
    11     14   				(lambda (,(cdadr exp) id-rename id-compare)
    12     15   					(let ((,(cdadr exp) (cdr ,(cdadr exp))))
    13     16   			 			,@(cddr exp))))))))