> Are you sure?  That would be a change from IEEE/ANSI/R5RS
> semantics, and it was indeed proposed, but according to
> Kent Dybvig's summary dated 2 May 2006, the editors' vote
> on that proposed change was 2-3, so the proposal failed
> [1].

That is correct, and it was not overturned later.

So (append '() '(a) '()) must return a new list.

> > I agree it's a bit confusing - if you can suggest a better wording, I'd
> > be happy to add an erratum.
>
> If the proposed change in semantics was never approved by
> the R6RS editors, then why not use the R5RS wording?

The R5RS wording is a bit awkward, as a note in the source admits.  It
labels all of the arguments lists in the prototype, then in the
description says the last argument actually need not be a list.  The
R6RS is not much less awkward, and it's also easily misinterpreted.

Here's the TSPL wording, which I'm happy to donate if it serves the
purpose adequately:

  (append list ... obj)

  \scheme{append} returns a new list consisting of the elements of the first
  list followed by the elements of the second list, the elements of the
  third list, and so on.  The new list is made from new pairs for all
  arguments but the last; the last (which need not be a list) is merely
  placed at the end of the new structure.

Kent

_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to