diff options
author | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-03-23 15:12:31 +0100 |
---|---|---|
committer | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-03-23 15:12:31 +0100 |
commit | 29e4d11cc8ce55c3ac8900ea5c93179c28d31ab4 (patch) | |
tree | 38ee39214ba5d7433120e71b07874d49c0d71fc7 /modules/language/python/def.scm | |
parent | 8a616982d428dbf9efbd07b8c817f809aceeea1d (diff) |
functools
Diffstat (limited to 'modules/language/python/def.scm')
-rw-r--r-- | modules/language/python/def.scm | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/modules/language/python/def.scm b/modules/language/python/def.scm index f0bb161..389e89e 100644 --- a/modules/language/python/def.scm +++ b/modules/language/python/def.scm @@ -1,4 +1,5 @@ (define-module (language python def) + #:use-module (oop pf-objects) #:use-module (language python for) #:use-module (ice-9 match) #:use-module (srfi srfi-11) @@ -90,14 +91,15 @@ ((k ...) (map car kv)) ((s ...) (map ->kw (map car kv))) ((v ...) (map cdr kv))) - #`(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 ...)))))))))))) + #`(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 ...))))))))))))) (define-syntax-rule (def (f . args) code ...) (define f (lam args code ...))) |