summaryrefslogtreecommitdiff
path: root/modules/language/python/for.scm
diff options
context:
space:
mode:
authorStefan Israelsson Tampe <stefan.itampe@gmail.com>2019-03-13 09:20:18 +0100
committerStefan Israelsson Tampe <stefan.itampe@gmail.com>2019-03-13 09:20:18 +0100
commit6b0070bb5c37b118eb09c1ec023999bbdf1781e7 (patch)
tree7bbc9df1036b0a7733ea45f3dd74a199929176e1 /modules/language/python/for.scm
parente1bf1a32c8453ea485365e9704e7cb983db3b4bb (diff)
parentdb36b6633b5ccd709eac44635ca88e8683ddb4e3 (diff)
Merge branch 'master' of https://gitlab.com/python-on-guile/python-on-guile
Diffstat (limited to 'modules/language/python/for.scm')
-rw-r--r--modules/language/python/for.scm14
1 files changed, 14 insertions, 0 deletions
diff --git a/modules/language/python/for.scm b/modules/language/python/for.scm
index cebb5d1..cff1baa 100644
--- a/modules/language/python/for.scm
+++ b/modules/language/python/for.scm
@@ -180,3 +180,17 @@
(set! (@@ (oop pf-objects) hashforeach)
(lambda (f d)
(for ((k v : d)) () (f k v))))
+
+(define (mk-k x)
+ (if (keyword? x)
+ x
+ (symbol->keyword
+ (if (string? x)
+ (string->symbol x)
+ x))))
+
+(set! (@@ (language python def) mkw)
+ (lambda (kw)
+ (for ((k v : kw)) ((l '()))
+ (cons* v (mk-k k) l)
+ #:final (reverse l))))