Ticket #1832: mwe-ko-common.scm

File mwe-ko-common.scm, 491 bytes (added by Dominik Joe Pantůček, 3 months ago)

Non-working example, module with base syntax.

Line 
1(module
2 mwe-ko-common
3 (
4  overides
5  )
6
7 (import scheme)
8
9 
10 (define-syntax overides
11   (syntax-rules ()
12     ((_ 1 (name pname ...) (method ...))
13      (define-syntax name
14        (syntax-rules (more go)
15          ((_ more mname mmethod)
16           (overides 1 (mname name pname ...) (method ... mmethod)))
17          ((_ go)
18           (letrec* ((full-path '(name pname ...))
19                     (method (lambda () (print full-path 'method))) ...)
20             (method) ...)))))
21     ((_ name method)
22      (overides 1 (name) (method)))))
23 )
24