summaryrefslogtreecommitdiff
path: root/modules/language/python
diff options
context:
space:
mode:
authorStefan Israelsson Tampe <stefan.itampe@gmail.com>2017-09-16 00:25:48 +0200
committerStefan Israelsson Tampe <stefan.itampe@gmail.com>2017-09-16 00:25:48 +0200
commita0bd0fb9c3165f12635587a0bdacb450c660ae17 (patch)
tree6f605fe9c9de6c03de2c6a0acb62f9679d1b6e1a /modules/language/python
parent3d8e9a93996ea408a8a57a6074d82f6bc90b4cb1 (diff)
applicable structs used
Diffstat (limited to 'modules/language/python')
-rw-r--r--modules/language/python/compile.scm25
-rw-r--r--modules/language/python/exceptions.scm9
-rw-r--r--modules/language/python/spec.scm4
3 files changed, 19 insertions, 19 deletions
diff --git a/modules/language/python/compile.scm b/modules/language/python/compile.scm
index e74b9f2..c315815 100644
--- a/modules/language/python/compile.scm
+++ b/modules/language/python/compile.scm
@@ -361,19 +361,18 @@
'mk-p-class
'mk-py-class)))
(parents (filt parents)))
- `(define ,class (,(O 'wrap) ,class
- (,(O kind)
- ,class
- ,(map (lambda (x) `(,(O 'get-class) ,x)) parents)
- #:const
- ,(match (exp vs defs)
- (('begin . l)
- l)
- ((('begin . l))
- l)
- (l l))
- #:dynamic
- ())))))))
+ `(define ,class (,(O kind)
+ ,class
+ ,(map (lambda (x) `(,(O 'get-class) ,x)) parents)
+ #:const
+ ,(match (exp vs defs)
+ (('begin . l)
+ l)
+ ((('begin . l))
+ l)
+ (l l))
+ #:dynamic
+ ()))))))
((#:import ((() nm) . #f))
`(use-modules (language python module ,(exp vs nm))))
diff --git a/modules/language/python/exceptions.scm b/modules/language/python/exceptions.scm
index 52ce807..1bbec08 100644
--- a/modules/language/python/exceptions.scm
+++ b/modules/language/python/exceptions.scm
@@ -19,12 +19,11 @@
(set self 'str str))))
(define __repr__
- (lambda (self . l)
- (define port (if (pair? l) (car l) #f))
- (aif it (ref self 'str)
- (format port "<~s: ~a>"
+ (lambda (self)
+ (aif it (ref self 'str #f)
+ (format #f "~a:~a"
(ref self '__name__) it)
- (format port "<~s>"
+ (format #f "~a"
(ref self '__name__))))))
diff --git a/modules/language/python/spec.scm b/modules/language/python/spec.scm
index 0cfb83a..155de87 100644
--- a/modules/language/python/spec.scm
+++ b/modules/language/python/spec.scm
@@ -29,7 +29,9 @@
(define-language python
#:title "python"
#:reader (lambda (port env)
- (cc port (read-string port)))
+ (if (not (fluid-ref (@@ (system base compile) %in-compile)))
+ (cc port (read-line port))
+ (cc port (read-string port))))
#:compilers `((tree-il . ,compile-tree-il))
#:decompilers `((tree-il . ,decompile-tree-il))