[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RETURN-VALUES-UNSPECIFIED



Issue:        RETURN-VALUES-UNSPECIFIED
References:   CLOSE (p 332), IN-PACKAGE (p 183), RENAME-PACKAGE (p 184),
	      TRACE (p 440), UNTRACE (p 440), INSPECT (p 442), 
	      SET-SYNTAX-FROM-CHAR (p 361),
	      LOCALLY (p 156), PROVIDE (p 188), REQUIRE (P 188)
Category:     CLARIFICATION
Edit history: 26-Aug-88, Version 1 by Chapman


Problem Description:

The descriptions of CLOSE, IN-PACKAGE, RENAME-PACKAGE, TRACE, UNTRACE,
INSPECT, SET-SYNTAX-FROM-CHAR, LOCALLY, PROVIDE, and REQUIRE 
are not clear about the values returned from those constructs.

Proposal (RETURN-VALUES-UNSPECIFIED:SPECIFY)

Clarify that the return values for the listed constructs are as follows:

CLOSE -- the stream argument.
IN-PACKAGE -- the new package, i.e. the value of *PACKAGE* after the execution
	of IN-PACKAGE.
RENAME-PACKAGE -- the renamed package.
TRACE (when called with arguments) -- implementation-dependent.
UNTRACE -- implementation-dependent.
INSPECT -- implementation-dependent.
SET-SYNTAX-FROM-CHAR -- T
LOCALLY -- the return values of the last form of its body, i.e. the body is
	surrounded by an implicit PROGN.
PROVIDE -- implementation-dependent.
REQUIRE -- implementation-dependent.

Rationale:

This clarification allows users to know when they can and can not
count on the values returned from
these constructs. 

Current Practice:


Adoption Cost:


Benefits:

This clarification will assist users in writing portable code.

Conversion Cost:


Aesthetics:

None.

Discussion: