racket/pkgs/racket-test/tests/generic/marked.rkt
Matthew Flatt 2d4f3e2ac9 remove the "racket-pkgs" directory layer
The layer is now redundant, since everything left in "pkgs" is in the
"racket-pkgs" category.
2014-12-08 05:22:59 -07:00

18 lines
360 B
Racket

#lang racket/base
(require racket/generic)
(define-generics thing
(process thing stuff))
(define-syntax-rule (define-thing name)
(struct name []
#:methods gen:thing
[(define-syntax-rule (define-super method)
(define/generic method process))
(define-super super)
(define (process x y)
(super y x))]))
(define-thing type)