~ chicken-core (chicken-5) ffcc52723d8b8eec068d73e485756fa0ab9662f5
commit ffcc52723d8b8eec068d73e485756fa0ab9662f5
Author: felix <felix@call-with-current-continuation.org>
AuthorDate: Mon Aug 29 02:04:54 2011 +0200
Commit: felix <felix@call-with-current-continuation.org>
CommitDate: Mon Aug 29 02:04:54 2011 +0200
use more meaningful alias for parameterized parameter
diff --git a/chicken-syntax.scm b/chicken-syntax.scm
index ec27c9dd..9cb1f655 100644
--- a/chicken-syntax.scm
+++ b/chicken-syntax.scm
@@ -275,6 +275,10 @@
'parameterize '()
(##sys#er-transformer
(lambda (form r c)
+ (define (pname p)
+ (if (symbol? p)
+ (gensym p)
+ (gensym "parameter")))
(##sys#check-syntax 'parameterize form '#(_ 2))
(let* ((bindings (cadr form))
(body (cddr form))
@@ -282,7 +286,7 @@
(mode (r 'mode))
(params (##sys#map car bindings))
(vals (##sys#map cadr bindings))
- (aliases (##sys#map (lambda (z) (r (gensym))) params))
+ (aliases (##sys#map (lambda (z) (r (pname z))) params))
(aliases2 (##sys#map (lambda (z) (r (gensym))) params)) )
`(##core#let
,(map ##sys#list aliases params)
Trap