-*-mode:org-*- * define-syntax and syntax-rules ** syntax.mes ** or psyntax.pp ** bugs *** v c0.mes *** v closure.mes *** v using (let () ...) in macro.mes/syntax.mes *** syntax.mes: closuring name? etc in syntax.mes *** syntax.mes: closuring: indicators: eval: no such symbol: --- *** <=, => take only 2 arguments ** run PEG ** parse C using PEG http://piumarta.com/software/peg/ ** missing member (using equal?) ** implement core primitives: DONE begin define if lambda letrec quote set! ** implement minimal needed for psyntax.pp: v "string" v #(v e c t o r) #\CHAR v assq v call-with-values v char? for-each v length v list v list->vector v make-vector v memq v memv v string v string-append v string? v symbol? v values v vector v vector->list v vector-length v vector-ref v vector-set! v vector? v procedure? ** implement minimal needed for define-macro-based define-syntax v char? v assq v define-macro equal? member v let loop v nested define-macro v nested define v boolean? v list? v <=, >= v string->symbol v and v or v ,@ unquote-splicing ** any, each? ** implement extras: v (gensym) ** hook-up sc-expand, see guile-1.0?: scheme:eval-transformer