You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
pollen/pollen/top.rkt

11 lines
298 B
Racket

#lang racket/base
(require (for-syntax racket/base) pollen/tag)
(provide def/c (rename-out (top~ #%top)))
(define-syntax-rule (top~ . ID)
(#%app make-default-tag-function 'ID))
(define-syntax (def/c stx)
(syntax-case stx ()
[(_ X) (identifier-binding #'X) #'X]
[(_ X) #'(#%top . X)]))