On Sat, Aug 12, 2023 at 1:59 PM Bradley Lucier <[email protected]> wrote:


> I am not aware of any SRFI or RNRS that talks about "safety" or about
> faster code at the risk of crashing the system in the face of incorrect
> code.
>

R6RS defines a library or top-level program as safe if it"cannot go so
badly wrong as to crash [not a defined term] or to continue to execute
while behaving in ways that are inconsistent with the semantics described
in [R6RS]."  In particular, all the standard R6RS libraries must be
implemented safely, and all libraries and top-level programs must be
implemented safely if they import only safe libraries.  An implementation
may provide unsafe libraries as well.  (Earlier drafts of R6RS provided
syntax for a user-written library to declare itself unsafe.)

R7RS libraries are not required to be safe.  SRFI 77 is a withdrawn
predecessor to R6RS and provides for safe and unsafe arithmetic
operations.  SRFI 226 (control features) discusses safety.

Reply via email to