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

Issue: DYNAMIC-EXTENT



Sandra and Gabriel initially claimed to oppose this even in principle.

However, Steele and I drafted a revised proposal over lunch Thursday.
The text of the revised proposal was:

 GLS and KMP 3/30/89

 Amendment to DYNAMIC-EXTENT:NEW-DECLARATION

 * Strike sentences 3 and 4 of paragraph 1.
 * Move paragraphs 3 through n-1 to the examples.
 * Strike last paragraph.
 * Add this text after paragraph 1:

   _Definition_: Object _x_ is an _otherwise_inaccessible_part_ (OIP)
    of _y_ iff making _y_ inaccessible would make _x_ inaccessible.
    (Note that every object is an OIP of itself.)

   Suppose that construct _c_ contains a DYNAMIC-EXTENT declaration
   for variable _v_ (which need not be bound by _c_).  Consider the
   values _w1_, ..., _wN_ taken on by _v_ during the course of some
   execution of _c_.  The declaration asserts that if object _x_ is
   an OIP of _wI_ when _wI_ ever becomes the value of _v_, then
   just after execution of _c_ terminates _x_ will be either 
   inaccessible or still an OIP of _v_.

The proposal was also amended in the meeting to say:

 "If the assertion is ever violated, the conseqeuences are undefined."

The fully amended proposal passed 17-0.

It was generally agreed that we would also like to consider a proposal
on dynamic extent functions at the next meeting. (Sandra said she would
prepare one, and has already done so. See issue DYNAMIC-EXTENT-FUNCTION.)