This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home.

Ticket 436: Formal Comment: Generalization of append, map, and for-each to other sequences

2012-10-12 03:41:22
WG1 - Core
cowan
major
alexshinn
fixed
source
closed
2012-07-02 04:02:39
defect

Formal Comment

Submitter's name: Marc Feeley Submitter's email: feeley at iro.umontreal.ca Relevant draft: r7rs draft 6

Type: defect Priority: major Relevant section of draft: 6.7. Strings, 6.8. Vectors, 6.9. Bytevectors, 6.10. Control features

Summary: Generalization of append, map, and for-each to other sequences

R7RS has three vector-like data types: strings, vectors and bytevectors.

The procedure

(string-append string ...)

exists to concatenate strings, like append concatenates lists. However there is no vector-append and bytevector-append which concatenate vectors and bytevectors.

The procedures

(string-map proc string1 string2 ...) (vector-map proc vector1 vector2 ...)

(string-for-each proc string1 string2 ...) (vector-for-each proc vector1 vector2 ...)

are for strings and vectors what map and for-each are for lists. There is no such procedures for bytevectors.

For consistency, these missing procedures should be added.

owneralexshinncowan
statusnewaccepted
resolutionfixed
statusacceptedclosed

The WG voted for vector-append and bytevector-append, but not bytevector-map or bytevector-for-each.