diff options
| author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-07-02 05:29:04 +0200 | 
|---|---|---|
| committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-07-02 05:29:04 +0200 | 
| commit | 710d0cec8854a4e89f4948d49e614f286913f711 (patch) | |
| tree | 7e15b14bc96863698c2a10f15098984872113911 /scheme/plt/geiser | |
| parent | ba38e61e768a5e2b6ccdebc09262e3186a8cf15b (diff) | |
| download | geiser-guile-710d0cec8854a4e89f4948d49e614f286913f711.tar.gz geiser-guile-710d0cec8854a4e89f4948d49e614f286913f711.tar.bz2 | |
Simpler, nicer, more efficient handling of evaluation results. It
comes with a pony too.
Diffstat (limited to 'scheme/plt/geiser')
| -rw-r--r-- | scheme/plt/geiser/eval.ss | 8 | 
1 files changed, 6 insertions, 2 deletions
| diff --git a/scheme/plt/geiser/eval.ss b/scheme/plt/geiser/eval.ss index 435b73b..5ae81ed 100644 --- a/scheme/plt/geiser/eval.ss +++ b/scheme/plt/geiser/eval.ss @@ -49,8 +49,12 @@    (set! last-result `((error (key . ,(exn-key e)))))    (display (exn-message e))) -(define (set-last-result v . vs) -  (set! last-result `((result  ,v ,@vs)))) +(define (write-value v) +  (with-output-to-string +    (lambda () (write v)))) + +(define (set-last-result . vs) +  (set! last-result `((result  ,@(map write-value vs)))))  (define (eval-in form spec)    (set-last-result (void)) | 
