File: schemetoc-define-syntax.scm

package info (click to toggle)
scheme48 1.9-5
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, stretch
  • size: 18,276 kB
  • ctags: 16,390
  • sloc: lisp: 88,906; ansic: 87,511; sh: 3,224; makefile: 766
file content (15 lines) | stat: -rw-r--r-- 390 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
; Part of Scheme 48 1.9.  See file COPYING for notices and license.

; Authors: Richard Kelsey, Jonathan Rees

(define-macro define-syntax
  (lambda (form expander)
    (expander `(define-macro ,(cadr form)
		 (let ((transformer ,(caddr form)))
		   (lambda (form expander)
		     (expander (transformer form
					    (lambda (x) x)
					    eq?)
			       expander))))
	      expander)))