Opened 6 years ago

Closed 4 years ago

#156 closed defect (fixed)

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

Reported by: cowan Owned by: cowan
Priority: major Milestone:
Component: WG1 - Core Keywords:
Cc:

Description

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.

Change History (4)

comment:1 Changed 6 years ago by arcfide

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.

comment:2 Changed 6 years ago by alexshinn

  • Status changed from new to decided

We voted to make this clear.

comment:3 Changed 6 years ago by cowan

  • Owner changed from alexshinn to cowan
  • Status changed from decided to writing

comment:4 Changed 4 years ago by cowan

  • Resolution set to fixed
  • Status changed from writing to closed
Note: See TracTickets for help on using tickets.