Paul Hudak answers a question concerning mutations of unshared structures:
>George, I think you are implying that if an unshared list is passed to
>this function then it can be mutated instead of copied. But
>determining that it is unshared can be very difficult (of course it is
>undecideable in general). Note in particular that you have to
>determine if any of the list's SUBSTRUCTURE is shared.
Could you be more specific? I don't understand why it is necessary to
establish the uniqueness/non-uniqueness of the substructures just to
(eventually) replace them?
I would appreciate very much learning more about this subject, for example
from the paper mentioned by Paul Hudak.
But I have another question: what is the attitude of the Haskell gurus
with respect to the solution proposed by the CONCURRENT CLEAN people -
the usage of an explicit annotation UNQ to mark the un-shared objects
and to allow their massacre?
Jerzy Karczmarczuk, dept. of comp. sci., University of Caen
Caen, Normandy, France. [EMAIL PROTECTED]