c++ type-safety.
[mes.git] / macro.mes
1 (define-macro (d-s n t)
2   ;; (display "D-S: ")
3   ;; (display `(define-macro (,n . a)
4   ;;             (,t (cons ',n a))))
5   ;; (newline)
6   `(define-macro (,n . args)
7      ;; (display "CALLING: t: ")
8      ;; (display ,t)
9      ;; (display " args: ")
10      ;; (display (cons ',n a))
11      ;; (newline)
12      ;; (display "HALLO: ==>")
13      ;; (display (,t (cons ',n a)))
14      ;; ;; (display "HALLO: ==>")
15      ;; ;; (display (,t (cons ',n a)))
16      ;; (newline)
17      (,t (cons ',n args))
18      )
19   )
20
21 (d-s s-r
22      (let ()
23        (define name? symbol?)
24        (lambda (. n-a)
25          ;;(define name? symbol?)
26         (display "YEAH:")
27         (display n-a)
28         (display (name? n-a))
29         (newline)
30         '(lambda (. i) ;;(i r c)
31            (display "transformers")
32            (newline)
33            ''tee-hee-hee
34            )
35         ;; (define (foo) (display "Footje") (newline) 'f-f-f)
36         ;; foo
37         ;;"blaat"
38         ))
39      )
40
41 (display "calling s-r")
42 (newline)
43 (d-s when
44      (s-r 0 1 2)
45      )
46
47 (display "calling when")
48 (newline)
49 (display (when 3 4 5))
50 (newline)
51 'dun