Ich habe gerade angefangen, in Racket-Makros einzutauchen, und versuche, ein kurzsichtiges, Makro definierendes Makro zu erstellen. Ich möchte einen Ausdruck wie folgt erweitern: wie diese (macro id
Um ein einfaches Beispiel geben: (define-macro-variable _iota 0) ; define-macro-variable does not really exist
(define-syntax (iota stx)
(syntax-case stx()
((iota)
(let ((i _iota))
Ich habe Common-Lisp-Makros geschrieben, daher sind die R5R-Makros von Scheme für mich etwas unnatürlich. Ich denke, ich auf die Idee kam, mit der Ausnahme, dass ich verstehe nicht, wie ein Vektor-Mus
Kann ein Makro in Schema geschrieben werden (mit define-syntax, zum Beispiel), die Ausdrücke wie folgt statt: (op a b c d e f g h i j)
Und Ausbeute Ausdrücke wie diese als Ausgabe? (op (op (op (op (