[R6RS] my notes on today's conference call (25 July 2006)
William D Clinger
will at ccs.neu.edu
Tue Jul 25 14:06:19 EDT 2006
Conference call July 25 2006 12:45pm
All present by 12:47pm:
Kent, Mike, Will, Matthew, Anton
0. finalize agenda (1 minute)
1. action items from 7/20/2006 (5 minutes)
- post revised library syntax w/export default phase (Kent)
done
- update (again) reference implementation for arithmetic SRFI (Will)
done
- carried over:
- update library srfi (Matthew and Kent)
(pending syntax/phasing decisions)
to be discussed today
- complete unicode reference implementation (Will)
no progress
- comment on core/library split (All)
in progress
2. set-car! and set-cdr! (10 minutes)
- vote between options:
- flush entirely
- relegate to r5rs compatibility library
- place in own "mutable list" library
- leave in the core
non-binding straw poll:
- flush entirely
Mike
- relegate to r5rs compatibility library
Will
- place in own "mutable list" library
Anton
- leave in the core
Kent, Matthew
vote between middle two (compromise) options:
- relegate to r5rs compatibility library
Will, Mike
- place in own "mutable list" library
Kent, Matthew, Anton
outcome: set-car! and set-cdr! will go in their own
"mutable list" library
3. library syntax (5 minutes)
- vote to accept essentially as currently proposed
- see https://r6rs.scheming.org/node/303#comment-1621
Will moved to accept essentially as current proposed,
modulo the options below and library phasing;
Mike seconded
approved by acclamation
- vote on options:
- definitions before expressions in lambda bodies
definitions must come first:
Will, Kent, Anton, Mike
can be interleaved:
abstain:
Matthew
- definitions before expressions in library bodies
definitions must come first:
Kent, Matthew, Will (who gave Kent his vote)
can be interleaved:
Anton, Mike
4. library phasing (10 minutes)
- two options on the table:
Model 1: library invoked once per run
- simpler, easier to implement
- can lead to accidental sharing of library state between
compilation and run time of a library
- works with current library syntax and eval specification
Model 2: library invoked once per phase
- more complex, harder to implement
- prevents accidental sharing of library state between compilation
and run time of a library
- requires a richer import-phase specification and some eval
exprssion syntax for specifying import phases
- see https://r6rs.scheming.org/node/307
Straw poll:
Model 1: Will, Kent
Model 2: Matthew (but would also be happy with Model 1),
Mike (but would also be happy with Model 1),
Anton (but would also be happy with Model 1)
Conclusion: work up a concrete proposal for Model 2,
including syntax and semantics for eval
Matthew wants to go with Model 2 and flush eval
Mike will try to come up with something
5. library naming (5 minutes)
- see https://r6rs.scheming.org/node/246
tabled for more discussion
6. safe/unsafe mode (5 minutes)
- vote between Proposals 0, 1, 2, and 3
- see draft/safety/safety.txt, draft/safety/safety2.txt
- see also extensive email discussion
Straw poll:
Who might be willing to flush declare syntax?
Kent, Mike, Will, Matthew, Anton
7. I/O (10 minutes)
- continued discussion
transcoder vs port mutability
naming of write-char (argument order conflict)
convenience library
8. adjourned about 2:02pm
More information about the R6RS
mailing list