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

cc


    

changetime

2012-10-07 03:57:52

component

WG1 - Core

description

R7RS requires an error to be signalled (which means an exception is raised as if by `raise`) in the following circumstances:

 1. Trying to open for input or delete a file that does not exist or is otherwise inaccessible.
 1. Specifying an argument to `scheme-report-environment` that the implementation doesn't support.  (It must support 7 and may support other values.)
 1. An EOF is encountered while `read` is in the middle of a datum.
 1. Using `expt` to raise zero to the power of a non-real number (alternatively an arbitrary number may be returned).

This proposal is to provide four standard predicates that identify these specific conditions, to be used in `guard` clauses or in `with-exception` handlers as a portable means of detecting these errors.  Although these predicates may return `#t` on other objects, if one reports `#t` on an object, the others must report `#f`.  Proposed names are `file-error?`, `scheme-report-error?`, `read-error?`, and `expt-error?` respectively.

id

391

keywords


    

milestone


    

owner

cowan

priority

major

reporter

cowan

resolution

fixed

severity


    

status

closed

summary

Add predicates for R7RS signalled conditions

time

2012-05-13 11:37:39

type

defect

Changes

Change at time 2012-10-07 03:57:52

author

cowan

field

comment

newvalue

WG1 adopted `file-error?` and `read-error?`.  `Expt-error?` was defined away, and with the decision to relegate `scheme-report-environment` to the R5RS compatibility library only, it no longer made sense to try to catch this error.

oldvalue

5

raw-time

1349557072209122

ticket

391

time

2012-10-07 03:57:52

Change at time 2012-10-07 03:57:52

author

cowan

field

resolution

newvalue

fixed

oldvalue


    

raw-time

1349557072209122

ticket

391

time

2012-10-07 03:57:52

Change at time 2012-10-07 03:57:52

author

cowan

field

status

newvalue

closed

oldvalue

writing

raw-time

1349557072209122

ticket

391

time

2012-10-07 03:57:52

Change at time 2012-08-27 04:59:18

author

cowan

field

comment

newvalue


    

oldvalue

4

raw-time

1346018358909053

ticket

391

time

2012-08-27 04:59:18

Change at time 2012-08-27 04:59:18

author

cowan

field

owner

newvalue

cowan

oldvalue

alexshinn

raw-time

1346018358909053

ticket

391

time

2012-08-27 04:59:18

Change at time 2012-08-27 04:59:18

author

cowan

field

status

newvalue

writing

oldvalue

decided

raw-time

1346018358909053

ticket

391

time

2012-08-27 04:59:18

Change at time 2012-08-26 23:13:32

author

cowan

field

comment

newvalue

WG1 voted to adopt this proposal.

oldvalue

3

raw-time

1345997612049612

ticket

391

time

2012-08-26 23:13:32

Change at time 2012-08-26 23:13:32

author

cowan

field

status

newvalue

decided

oldvalue

new

raw-time

1345997612049612

ticket

391

time

2012-08-26 23:13:32

Change at time 2012-07-07 03:23:20

author

cowan

field

comment

newvalue


    

oldvalue

2

raw-time

1341606200607448

ticket

391

time

2012-07-07 03:23:20

Change at time 2012-07-07 03:23:20

author

cowan

field

description

newvalue

R7RS requires an error to be signalled (which means an exception is raised as if by `raise`) in the following circumstances:

 1. Trying to open for input or delete a file that does not exist or is otherwise inaccessible.
 1. Specifying an argument to `scheme-report-environment` that the implementation doesn't support.  (It must support 7 and may support other values.)
 1. An EOF is encountered while `read` is in the middle of a datum.
 1. Using `expt` to raise zero to the power of a non-real number (alternatively an arbitrary number may be returned).

This proposal is to provide four standard predicates that identify these specific conditions, to be used in `guard` clauses or in `with-exception` handlers as a portable means of detecting these errors.  Although these predicates may return `#t` on other objects, if one reports `#t` on an object, the others must report `#f`.  Proposed names are `file-error?`, `scheme-report-error?`, `read-error?`, and `expt-error?` respectively.

oldvalue

R7RS requires an error to be signalled (which means an exception is raised as if by `raise`) in the following circumstances:

 1. Trying to open for input or delete a file that does not exist or is otherwise inaccessible.
 1. Specifying an argument to `scheme-report-environment` that the implementation doesn't support.  (It must support 7 and may support other values.)
 1. An EOF is encountered while `read` is in the middle of a datum.
 1. Using `expt` to raise zero to the power of a non-real number (alternatively an arbitrary number may be returned).

This proposal is to provide four standard predicates that identify these specific conditions, to be used in `guard` clauses or in `with-exception` handlers as a portable means of detecting these errors.  Although these predicates may return `#t` on other objects, if one reports `#t` on an object, the others must report `#f`.  Proposed names are `filename-error?`, `scheme-report-error?`, `read-error?`, and `expt-error?` respectively.

raw-time

1341606200607448

ticket

391

time

2012-07-07 03:23:20

Change at time 2012-05-15 03:49:45

author

cowan

field

comment

newvalue


    

oldvalue

1

raw-time

1337028585063744

ticket

391

time

2012-05-15 03:49:45

Change at time 2012-05-15 03:49:45

author

cowan

field

description

newvalue

R7RS requires an error to be signalled (which means an exception is raised as if by `raise`) in the following circumstances:

 1. Trying to open for input or delete a file that does not exist or is otherwise inaccessible.
 1. Specifying an argument to `scheme-report-environment` that the implementation doesn't support.  (It must support 7 and may support other values.)
 1. An EOF is encountered while `read` is in the middle of a datum.
 1. Using `expt` to raise zero to the power of a non-real number (alternatively an arbitrary number may be returned).

This proposal is to provide four standard predicates that identify these specific conditions, to be used in `guard` clauses or in `with-exception` handlers as a portable means of detecting these errors.  Although these predicates may return `#t` on other objects, if one reports `#t` on an object, the others must report `#f`.  Proposed names are `filename-error?`, `scheme-report-error?`, `read-error?`, and `expt-error?` respectively.

oldvalue

R7RS requires an error to be signalled (which means an exception is raised as if by `raise`) in the following circumstances:

 1. Trying to open for input or delete a file that does not exist or is otherwise inaccessible.
 1. Specifying an argument to `scheme-report-environment` that the implementation doesn't support.  (It must support 7 and may support other values.)
 1. An EOF is encountered while `read` is in the middle of a datum.
 1. Using `expt` to raise zero to the power of a non-real number.


This proposal is to provide four standard predicates that identify these specific conditions, to be used in `guard` clauses or in `with-exception` handlers as a portable means of detecting these errors.  Although these predicates may return `#t` on other objects, if one reports `#t` on an object, the others must report `#f`.  Proposed names are `filename-error?`, `scheme-report-error?`, `read-error?`, and `expt-error?` respectively.

raw-time

1337028585063744

ticket

391

time

2012-05-15 03:49:45