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 #33

cc


    

changetime

2011-01-24 08:12:22

component

WG1 - Core

description

New to R5RS, do we reaffirm the sometimes debated dynamic-wind?

id

33

keywords


    

milestone


    

owner

alexshinn

priority

major

reporter

alexshinn

resolution

wontfix

severity


    

status

closed

summary

dynamic-wind

time

2010-02-23 17:07:10

type

defect

Changes

Change at time 2011-01-24 08:12:22

author

cowan

field

comment

newvalue


    

oldvalue

8

raw-time

1295827942000000

ticket

33

time

2011-01-24 08:12:22

Change at time 2011-01-24 08:12:22

author

cowan

field

resolution

newvalue

wontfix

oldvalue


    

raw-time

1295827942000000

ticket

33

time

2011-01-24 08:12:22

Change at time 2011-01-24 08:12:22

author

cowan

field

status

newvalue

closed

oldvalue

reopened

raw-time

1295827942000000

ticket

33

time

2011-01-24 08:12:22

Change at time 2011-01-24 08:12:05

author

cowan

field

comment

newvalue


    

oldvalue

7

raw-time

1295827925000000

ticket

33

time

2011-01-24 08:12:05

Change at time 2011-01-24 08:12:05

author

cowan

field

resolution

newvalue


    

oldvalue

fixed

raw-time

1295827925000000

ticket

33

time

2011-01-24 08:12:05

Change at time 2011-01-24 08:12:05

author

cowan

field

status

newvalue

reopened

oldvalue

closed

raw-time

1295827925000000

ticket

33

time

2011-01-24 08:12:05

Change at time 2010-10-18 02:32:39

author

cowan

field

comment

newvalue

The WG voted to reaffirm R5RS `dynamic-wind` as part of the core.

oldvalue

6

raw-time

1287343959000000

ticket

33

time

2010-10-18 02:32:39

Change at time 2010-10-18 02:32:39

author

cowan

field

resolution

newvalue

fixed

oldvalue


    

raw-time

1287343959000000

ticket

33

time

2010-10-18 02:32:39

Change at time 2010-10-18 02:32:39

author

cowan

field

status

newvalue

closed

oldvalue

new

raw-time

1287343959000000

ticket

33

time

2010-10-18 02:32:39

Change at time 2010-03-17 03:27:11

author

kumoyuki

field

comment

newvalue

Replying to [comment:4 cowan]:
> First of all, nothing is beyond the scope of WG1 unless WG1 declares it so, which has not happened.

Well it's clear we all have opinions on where the boundaries should lie. Or was that WG2 we signed up for?

> Second, not standardizing threads is not equivalent to standardizing the absence of threads. 

This is precisely my point. Thank you.

> All major Scheme implementations have threads, and that can't just be ignored.

As far as I can tell Larceny as of v0.97 doesn't, although the source code contains strong hints that they have been working on the ideas. Or maybe Larceny isn't a major implementation in your sight.

> Finally, the fact that a procedure can be implemented in terms of existing procedures has never been a bar to standardizing it.  

If you have only winding continuations you have no other options. If you have classic call-with-current-continuation, you can have both. Additionally, the case of dynamic-wind however, is a fairly clear case of moving in exactly the opposite direction of the Prime Clingerism. WG2 is far less constrained in those terms.

oldvalue

4.5

raw-time

1268771231000000

ticket

33

time

2010-03-17 03:27:11

Change at time 2010-03-16 20:24:42

author

cowan

field

comment

newvalue

First of all, nothing is beyond the scope of WG1 unless WG1 declares it so, which has not happened.

Second, not standardizing threads is not equivalent to standardizing the absence of threads.  All major Scheme implementations have threads, and that can't just be ignored.

Finally, the fact that a procedure can be implemented in terms of existing procedures has never been a bar to standardizing it.  As obvious examples, consider ABS, GCD, LCM, INTEGER?, ZERO? and friends, MAX, MIN, NUMBER->STRING, STRING->NUMBER, LIST, LENGTH, APPEND, REVERSE, LIST-TAIL, ASSOC and friends, MEMBER and friends, CHAR=? and friends, STRING, STRING-APPEND, STRING->LIST, LIST->STRING, VECTOR, MAP, FOR-EACH, EVAL, WITH-*-*-FILE, WRITE, DISPLAY, NEWLINE/.

oldvalue

4

raw-time

1268745882000000

ticket

33

time

2010-03-16 20:24:42

Change at time 2010-03-16 13:40:22

author

kumoyuki

field

comment

newvalue

Threading requires primitives beyond the scope of WG1. QED.

oldvalue

3

raw-time

1268721622000000

ticket

33

time

2010-03-16 13:40:22

Change at time 2010-03-16 11:36:02

author

cowan

field

comment

newvalue

Not in Schemes which provide threads.

oldvalue

2

raw-time

1268714162000000

ticket

33

time

2010-03-16 11:36:02

Change at time 2010-03-16 05:20:00

author

kumoyuki

field

comment

newvalue

No. dynamic-wind is properly the realm of WG2 as it is directly implementable on top of the R4RS non-winding call-with-current-continuation.

oldvalue

1

raw-time

1268691600000000

ticket

33

time

2010-03-16 05:20:00

Change at time 2010-03-16 05:20:00

author

kumoyuki

field

milestone

newvalue


    

oldvalue


    

raw-time

1268691600000000

ticket

33

time

2010-03-16 05:20:00