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

cc


    

changetime

2012-10-07 09:06:45

component

WG1 - Core

description

What is the base environment provided by the repl,
scripts, and the result of (scheme-report-environment 7)?

The intention was the base script environment was empty,
scheme-report-environment was (scheme base), and repls
were an implementation-defined superset thereof, but there
are other options and we need to clarify this.

id

159

keywords


    

milestone


    

owner

alexshinn

priority

major

reporter

alexshinn

resolution

fixed

severity


    

status

closed

summary

base environments

time

2011-04-19 20:40:26

type

defect

Changes

Change at time 2012-10-07 09:06:45

author

cowan

field

comment

newvalue

We now talk of programs rather than scripts, and `(scheme-report-environment 5)` returns the same as `(environment '(scheme r5rs))`, but the basic intent is preserved: programs start with an empty environment, REPLs don't.

oldvalue

4

raw-time

1349575605922070

ticket

159

time

2012-10-07 09:06:45

Change at time 2012-10-07 09:06:45

author

cowan

field

resolution

newvalue

fixed

oldvalue


    

raw-time

1349575605922070

ticket

159

time

2012-10-07 09:06:45

Change at time 2012-10-07 09:06:45

author

cowan

field

status

newvalue

closed

oldvalue

writing

raw-time

1349575605922070

ticket

159

time

2012-10-07 09:06:45

Change at time 2011-07-10 20:47:56

author

alexshinn

field

comment

newvalue


    

oldvalue

3

raw-time

1310305676000000

ticket

159

time

2011-07-10 20:47:56

Change at time 2011-07-10 20:47:56

author

alexshinn

field

status

newvalue

writing

oldvalue

decided

raw-time

1310305676000000

ticket

159

time

2011-07-10 20:47:56

Change at time 2011-07-10 18:15:34

author

alexshinn

field

comment

newvalue

We voted for the original intent as described above.

oldvalue

2

raw-time

1310296534000000

ticket

159

time

2011-07-10 18:15:34

Change at time 2011-07-10 18:15:34

author

alexshinn

field

resolution

newvalue


    

oldvalue


    

raw-time

1310296534000000

ticket

159

time

2011-07-10 18:15:34

Change at time 2011-07-10 18:15:34

author

alexshinn

field

status

newvalue

decided

oldvalue

new

raw-time

1310296534000000

ticket

159

time

2011-07-10 18:15:34

Change at time 2011-04-20 02:19:43

author

cowan

field

comment

newvalue

I'm thinking that scheme-report-environment just doesn't make sense any more.  I think that scripts and the REPL should both be implementation-dependent supersets of (scheme base) -- indeed, I don't see any point in distinguishing between the two.  Both scripting and interaction are environments in which convenience should trump bureaucracy.

R6RS has a procedure `environment` which accepts multiple arguments which look like import specs, and returns an environment containing the specified names.  So `(environment)` is equivalent to R5RS `(empty-environment)`, `(environment '(scheme base))` returns a base environment, and so on.  That makes a lot of sense to me.

oldvalue

1

raw-time

1303240783000000

ticket

159

time

2011-04-20 02:19:43