added waiter-prompt-string parameter (chez compatible)
This commit is contained in:
parent
574942c1b0
commit
c375d537a3
|
@ -38,19 +38,26 @@ description:
|
||||||
Be specific about what the error-port is |#
|
Be specific about what the error-port is |#
|
||||||
|
|
||||||
(library (ikarus cafe)
|
(library (ikarus cafe)
|
||||||
(export new-cafe)
|
(export new-cafe waiter-prompt-string)
|
||||||
(import
|
(import
|
||||||
(only (rnrs) with-exception-handler)
|
(only (rnrs) with-exception-handler)
|
||||||
(except (ikarus) new-cafe))
|
(except (ikarus) new-cafe waiter-prompt-string))
|
||||||
|
|
||||||
(define eval-depth 0)
|
(define eval-depth 0)
|
||||||
|
|
||||||
|
(define waiter-prompt-string
|
||||||
|
(make-parameter ">"
|
||||||
|
(lambda (x)
|
||||||
|
(if (string? x)
|
||||||
|
x
|
||||||
|
(die 'waiter-prompt-string "not a string" x)))))
|
||||||
|
|
||||||
(define display-prompt
|
(define display-prompt
|
||||||
(lambda (i)
|
(lambda (i)
|
||||||
(if (fx= i eval-depth)
|
(if (fx= i eval-depth)
|
||||||
(display " " (console-output-port))
|
(display " " (console-output-port))
|
||||||
(begin
|
(begin
|
||||||
(display ">" (console-output-port))
|
(display (waiter-prompt-string) (console-output-port))
|
||||||
(display-prompt (fx+ i 1))))))
|
(display-prompt (fx+ i 1))))))
|
||||||
|
|
||||||
(define (print-ex ex)
|
(define (print-ex ex)
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
1856
|
1857
|
||||||
|
|
|
@ -389,6 +389,7 @@
|
||||||
[assembler-output i]
|
[assembler-output i]
|
||||||
[optimizer-output i]
|
[optimizer-output i]
|
||||||
[new-cafe i]
|
[new-cafe i]
|
||||||
|
[waiter-prompt-string i]
|
||||||
[expand i]
|
[expand i]
|
||||||
[core-expand i]
|
[core-expand i]
|
||||||
[expand/optimize i]
|
[expand/optimize i]
|
||||||
|
|
Loading…
Reference in New Issue