diff options
author | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-03-27 16:19:00 +0200 |
---|---|---|
committer | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-03-27 16:19:00 +0200 |
commit | 944fc50b8b36455b9749ad6b60f3020d466f901c (patch) | |
tree | abbbfdda0c84a10609a5ddda5d3940733db75f7e /modules/language/python/def.scm | |
parent | 1c4e6def8285e0740461b732c78c74ed3345f524 (diff) |
large part of functools compiles
Diffstat (limited to 'modules/language/python/def.scm')
-rw-r--r-- | modules/language/python/def.scm | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/modules/language/python/def.scm b/modules/language/python/def.scm index 389e89e..7045cec 100644 --- a/modules/language/python/def.scm +++ b/modules/language/python/def.scm @@ -81,7 +81,7 @@ (ww- (fold get-ww '() #'(arg ...))) (kv (fold get-kv '() #'(arg ...)))) (if (and-map null? (list kw ww- kv)) - #`(lambda #,as code ...) + #`(object-method (lambda #,as code ...)) (with-syntax ((kw (if (null? kw) (datum->syntax x (gensym "kw")) (car kw))) @@ -91,15 +91,15 @@ ((k ...) (map car kv)) ((s ...) (map ->kw (map car kv))) ((v ...) (map cdr kv))) - #`(object-method - (lambda* (#,@as . l) - (call-with-values (lambda () (get-akw l)) - (lambda (ww* kw) - (let*-values (((ww* k) (take-1 #,(null? ww-) ww* kw s v)) + #`(object-method + (lambda* (#,@as . l) + (call-with-values (lambda () (get-akw l)) + (lambda (ww* kw) + (let*-values (((ww* k) (take-1 #,(null? ww-) ww* kw s v)) ...) - (let ((ww ww*) - (kw (pytonize kw))) - code ...))))))))))))) + (let ((ww ww*) + (kw (pytonize kw))) + code ...))))))))))))) (define-syntax-rule (def (f . args) code ...) (define f (lam args code ...))) |