[clean-list] Re: Strict lists kill me...

Jerzy Karczmarczuk karczma@info.unicaen.fr
Wed, 03 Dec 2003 09:26:48 +0100


Peter Achten answers my query about the non-interleaving of playing
and writing in:

>>   # console = fwrites "beginning of first fragment\n" console
>>   # (a,wrld)  = playWav "file1.wav" wrld
>>   # console = fwrites "end of first fragment\n" console
>>   # (b,wrld) = playWav "file2.wav" wrld
>>   # console = fwrites "end of second fragment\n" consol

> You have specified no relation between console and world; therefore any 
> sequential interleaving order of console operations and world operations 
> is a valid execution of this program. Strictness is of no help; what you 
> need is data-dependency between console and world, for instance by 
> closing the console immediately after writing to it.
...

Thank you, indeed. But - as I explicitly said - I know that. I confessed
that I had some superficial understanding of the reasons why it *might*
play everything and then write everything, although I don't find it
natural, since the event synchronisation *might* be coherent even without
data dependencies.

I decided to send my posting when I discovered that it is not entirely
true that strictless is meaningless here. After having replaced # by #!
all console output was generated *BEFORE* the sound playing. So, there
are some dark corners within the compiler soul...

But OK, I will look up how the interactive games are structured. Thanks
again.


Jerzy Karczmarczuk