[ikarus-users] [plt-scheme] Re: [Larceny-users] side effects in R6RS modules

From: Ramana Kumar (ramana.kumar at gmail.com)
Date: Tue May 5 19:14:33 EDT 2009

+1
is there a good argument for set! to return unspecified?

On Wed, May 6, 2009 at 1:35 AM, namekuseijin <namekuseijin at gmail.com> wrote:
> Speaking of RNRSs unspecified behaviours I always wished to modify:
>
> (set! foo bar)
> and
> (sequence-set! foo index val)
>
> to return the value of the variable being set.  Come on, I know you
> folks wish it too... :P
>
> On Tue, May 5, 2009 at 12:21 PM, Abdulaziz Ghuloum <aghuloum at gmail.com> wrote:
>>
>> On May 5, 2009, at 5:44 PM, Matthias Felleisen wrote:
>>
>>> In PL, such questions should be decided via mathematical models that
>>> do not depend on machines and compilers. That's the only way to truly
>>> disambiguate the English in a spec.
>>>
>>> For whatever reasons, the editors moved the only piece of mathematics
>>> semantics (which doesn't include modules and macros) to the appendix,
>>> for reasons that still escape me. Well, they don't really. If you
>>> don't have a tool for arbitrating two distinct interpretations of
>>> an informal document, you can always claim that both are correct and
>>> if you so desire, you can claim one of them is, eh, smart? :-)
>>
>> Such tool helps indeed, but it's not the only way to arbitrate
>> the different interpretations of the document.  As a matter of
>> fact, the document in question explicitly states that both of
>> these interpretations (and many others) are allowed and are
>> correct with regard to satisfying the report's requirements.
>> The issue here is that the library in question has nonportable
>> semantics (as should be clear from reading the document) but
>> this is the same as depending on any other unspecified behavior
>> (such as one implementation's evaluation order: left-to-right,
>> right-to-left, ...).  You're not arguing that there must be
>> only one valid and true interpretation of the report, right?
>>
>> Aziz,,,
>>
>> _________________________________________________
>>  For list-related administrative tasks:
>>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>>
>


Posted on the users mailing list.