[r6rs-discuss] [Formal] Formal comment #154 resolution not implemented

Jed Davis r6rs at jdev.users.panix.com
Fri Jun 8 12:11:24 EDT 2007


On Tue, Jun 05, 2007 at 03:11:56PM -0400, John Cowan wrote:
> 
> However, bytevectors are not self-evaluating in R5.93RS per report
> section 3.3.4.  I propose that they be made so, and that the rejection
> of self-evaluating vectors be reconsidered as well.

Vectors are a bit interesting here; unlike bytevectors, numbers,
strings, and so on, they aren't flat data.  For example:

  #(23 (* 6 7) (cadr '(1 2 3)) (read) +)

Does that effectively quote those subexpressions, or does it evaulate
them and build a new vector?  "Self-evaluating" indicates the former,
but that strikes me as a least-surprise violation.

-- 
(let ((C call-with-current-continuation)) (apply (lambda (x y) (x y)) (map
((lambda (r) ((C C) (lambda (s) (r (lambda l (apply (s s) l))))))  (lambda
(f) (lambda (l) (if (null? l) C (lambda (k) (display (car l)) ((f (cdr l))
(C k)))))))    '((#\J #\d #\D #\v #\s) (#\e #\space #\a #\i #\newline)))))



More information about the r6rs-discuss mailing list