diff options
author | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-08-29 21:05:37 +0200 |
---|---|---|
committer | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-08-29 21:05:37 +0200 |
commit | 3d44139af1b65ec71abafec939b5240d3821490b (patch) | |
tree | 5206b8a818456b3ec0c740cf14d25d8351c77c28 /modules/language/python/def.scm | |
parent | 9bd339b34f09f5b582cb8b77a11841f5de9ab695 (diff) |
shutil.py
Diffstat (limited to 'modules/language/python/def.scm')
-rw-r--r-- | modules/language/python/def.scm | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/modules/language/python/def.scm b/modules/language/python/def.scm index 7622b7a..b2a8de2 100644 --- a/modules/language/python/def.scm +++ b/modules/language/python/def.scm @@ -77,7 +77,7 @@ (define (->kw x) (symbol->keyword (syntax->datum x))) - (syntax-case x () + (syntax-case x (*) ((_ (arg ...) code ...) (let* ((as (fold get-as '() #'(arg ...))) (kw (fold get-kw '() #'(arg ...))) @@ -143,7 +143,13 @@ (define-syntax py-apply (lambda (x) - (syntax-case x () + (syntax-case x (*) + ((_ f a ... (* x)) + (and-map (lambda (x) (symbol? (syntax->datum x))) #'(a ...)) + #'(if (pair? x) + (apply f a ... x) + (apply f a ... (to-list x)))) + ((_ f a ...) (if (no #'(a ...)) #'(f a ...) |