(Arne Babenhauserheide)
2013-12-31: diagnose error. found broken hygiene. added todo for reporting it. support-scheme-macro-paren-quoting diagnose error. found broken hygiene. added todo for reporting it.
diff --git a/examples/tinyenc.w b/examples/tinyenc.w --- a/examples/tinyenc.w +++ b/examples/tinyenc.w @@ -34,7 +34,7 @@ define : v1change k2 v0 sum k3 define-syntax with-split-vk syntax-rules : : with-split-vk v k exp exp* ... - let + let ; TODO: This defines syntmp-v0-# instead of v0. TODO: report bug: this breaks hygiene: (define-syntax with-car-a-cdr-b (syntax-rules () ((_ some-list exp exp* ...) (let ((a (car some-list))(b (cdr some-list))) exp exp* ...)))) (with-car-a-cdr-b (list "1" "2" "3") (display syntmp-a-235)) - adjust syntmp-a-# as needed. To avoid: walk the code to ensure that no used variables are bound. : v0 : uint32 : ash v -32 v1 : uint32 v k0 : uint32 : ash k -96