What should delegates with qualifiers mean?

Timon Gehr timon.gehr at gmx.ch
Thu Mar 25 01:01:15 UTC 2021


On 24.03.21 23:18, Timon Gehr wrote:
> 
> Why is removing qualifiers sound? delegate is an existential type:
> 
> B delegate(A)q ≡ ∃C. (A×q(C)*)→B

Oops. Typo. This should of course have been:

Why is removing qualifiers sound? delegate is an existential type:

B delegate(A)q ≡ ∃C. (A×q(C)*)×q(C)*→B

Therefore,

B delegate(A)immutable ≡ ∃C. (A×immutable(C)*)×immutable(C)*→B ⊆ ∃C'. 
(A×C'*)×C'*→B,

where we have chosen C' as immutable(C).


More information about the Digitalmars-d mailing list