diff options
-rw-r--r-- | module/language/scheme/spec.scm | 1 | ||||
-rw-r--r-- | module/system/repl/common.scm | 7 |
2 files changed, 6 insertions, 2 deletions
diff --git a/module/language/scheme/spec.scm b/module/language/scheme/spec.scm index 263621a3d..2c9bc4fb6 100644 --- a/module/language/scheme/spec.scm +++ b/module/language/scheme/spec.scm @@ -46,5 +46,6 @@ #:reader read #:read-file read-file #:translator translate + #:evaluator eval #:printer write ) diff --git a/module/system/repl/common.scm b/module/system/repl/common.scm index edfb81500..608c38577 100644 --- a/module/system/repl/common.scm +++ b/module/system/repl/common.scm @@ -38,7 +38,8 @@ (define-record (<repl> vm language options tm-stats gc-stats vm-stats)) (define repl-default-options - '((trace . #f))) + '((trace . #f) + (interp . #f))) (define %make-repl make-repl) (define (make-repl lang) @@ -68,7 +69,9 @@ (define (repl-eval repl form) (let ((eval (language-evaluator (repl-language repl)))) - (if eval + (if (and eval + (or (not (language-translator (repl-language repl))) + (assq-ref (repl-options repl) 'interp))) (eval form (current-module)) (vm-load (repl-vm repl) (repl-compile repl form))))) |