LINUX.ORG.RU

История изменений

Исправление monk, (текущая версия) :

Можно удалить всю гигиену из определения:

(define-syntax (define/mongo-struct stx)
  (syntax-case stx ()
    [(_ VAR COLNAME)
     #`#,(datum->syntax stx (list* 'define-mongo-struct #'VAR (parse (data #'COLNAME))))]))

Но внутри макросов будет работать кривовато (как в Common Lisp).

Исходная версия monk, :

Можно удалить всю гигиену из определения:

(define-syntax (define/mongo-struct stx)
  (syntax-case stx ()
    [(_ VAR COLNAME)
     #`#,(datum->syntax stx (list* 'define-mongo-struct #'VAR (parse (data #'COLNAME))))]))