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.

Source for ticket #504

cc


    

changetime

2013-07-07 03:20:44

component

WG1 - Core

description

Jussi Piitulainen writes:

  I appreciate that a model interface for sequence procedures was worked out, but the attempt to "round out" things for all sequence types failed: a new sequence type was introduced without such procedures, all these procedure may not be equally appropriate for all sequence types - such rounding up was considered ages ago and rejected then, and the absence of mixed-type procedures is now awkward. Scheme fails to express the underlying abstraction. The main harm of all these procedures is that they take up space in the report.

id

504

keywords


    

milestone


    

owner

alexshinn

priority

major

reporter

cowan

resolution

wontfix

severity


    

status

closed

summary

The treatment of sequences is still flawed

time

2013-05-13 07:52:23

type

defect

Changes

Change at time 2013-07-07 03:20:44

author

cowan

field

comment

newvalue

The WG decided by unanimous consent to take no action on this ticket.

oldvalue

2

raw-time

1373142044410382

ticket

504

time

2013-07-07 03:20:44

Change at time 2013-07-07 03:20:44

author

cowan

field

resolution

newvalue

wontfix

oldvalue


    

raw-time

1373142044410382

ticket

504

time

2013-07-07 03:20:44

Change at time 2013-07-07 03:20:44

author

cowan

field

status

newvalue

closed

oldvalue

new

raw-time

1373142044410382

ticket

504

time

2013-07-07 03:20:44

Change at time 2013-05-13 07:57:04

author

cowan

field

comment

newvalue

Bytevectors aren't quite a sequence type in themselves: they are an underlying mechanism for implementing various sequence types such as u8vectors, s8vectors, u16vectors, etc. etc; see NumericVectorsCowan for a fully worked out proposal for R7RS-large.  Of these, u8vectors are the simplest; consequently, they are treated as primitive and included in R7RS-small as well.  The result is necessarily imperfect.

The point about mixed-type procedures is a strong one, but such procedures could easily be layered on top of what we have.  That is the advantage of Scheme's "relentless monomorphism"; you can design your own polymorphic system on top of it however you want, with whatever coercion rules make the most sense to you.  If one such system is eventually seen to be full of win, it can be standardized in future.

oldvalue

1

raw-time

1368406624175279

ticket

504

time

2013-05-13 07:57:04