Hello Germán,

> (if (guile-a?)
>     (define-macro (define-public-macro head . body)
>       `(define-public ,(car head)
>        ;; FIXME: why can't we use procedure->macro
>        ;; for a non-memoizing variant?
>        (procedure->memoizing-macro
>         (lambda (cmd env)
>           (apply (lambda ,(cdr head) ,@body) (cdr cmd)))))))

For these guile version related code, I suggest something like this:

(cond-expand
  (guile-2
    ... ...)
  (else
    (define-macro (unless test . body)
      `(if (not ,test) (begin ,@body)))
      (export unless))))

Here is a real case example [which starts @ line 44]:

        
http://git.savannah.gnu.org/cgit/guile-gnome.git/tree/glib/gnome/gobject/utils.scm

Cheers,
David

Reply via email to