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.

Ticket 156: Replace "an error is signalled" with "an implementation-dependent object is raised as if by `raise`"

2012-10-05 12:11:59
WG1 - Core
cowan
major
cowan
fixed
source
closed
2011-04-17 05:55:06
defect

The following situations are described in draft 1 (and R5RS) with "an error is signalled":

  1. The file-spec given to call-with-input-file, call-with-output-file, open-input-file, or open-output-file represents a file that cannot be opened.
  1. An end of file is read from a port by read after the beginning of an object's external representation, but the external representation is incomplete and therefore not parsable.

I propose that in both cases the implementation be required to raise an exception as if by applying raise (that is, non-continuably) to an implementation-defined object, which means it can be caught by the R7RS exception system. Note that there is no requirement to create a fresh object.

I like the general idea. I might also suggest that the language signally an error be considered synonymous with raising an appropriate condition using raise.

resolution
statusnewdecided

We voted to make this clear.

owneralexshinncowan
statusdecidedwriting
resolutionfixed
statuswritingclosed