[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