#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/unpars.scm,v 14.20 1991/05/15 19:36:18 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/unpars.scm,v 14.21 1991/06/10 22:50:46 jinx Exp $
Copyright (c) 1988-91 Massachusetts Institute of Technology
(define (unparse-tail l n)
(cond ((pair? l)
- (let ((prefix (unparse-list/prefix-pair? l)))
- (if prefix
- (unparse-list/prefix-pair prefix l)
- (let ((method (unparse-list/unparser l)))
- (if method
- (begin
+ (let ((prefix ))
+ (cond #|
+ ((unparse-list/prefix-pair? l)
+ => (lambda (prefix)
(*unparse-string " . ")
- (invoke-user-method method l))
- (begin
- (*unparse-char #\space)
- (*unparse-object (car l))
- (if (and *unparser-list-breadth-limit*
- (>= n *unparser-list-breadth-limit*)
- (not (null? (cdr l))))
- (*unparse-string " ...")
- (unparse-tail (cdr l) (1+ n)))))))))
+ (unparse-list/prefix-pair prefix l)))
+ |#
+ ((unparse-list/unparser l)
+ => (lambda (method)
+ (*unparse-string " . ")
+ (invoke-user-method method l)))
+ (else
+ (*unparse-char #\space)
+ (*unparse-object (car l))
+ (if (and *unparser-list-breadth-limit*
+ (>= n *unparser-list-breadth-limit*)
+ (not (null? (cdr l))))
+ (*unparse-string " ...")
+ (unparse-tail (cdr l) (1+ n)))))))
((not (null? l))
(*unparse-string " . ")
(*unparse-object l))))