Interesting paper on composing type definitions
bpr via Digitalmars-d
digitalmars-d at puremagic.com
Mon Mar 6 14:02:54 PST 2017
On Monday, 6 March 2017 at 21:22:46 UTC, Timon Gehr wrote:
> On 06.03.2017 21:49, Enamex wrote:
>> On Monday, 6 March 2017 at 01:37:18 UTC, Andrei Alexandrescu
>> wrote:
>>> On 3/4/17 10:36 PM, Andrei Alexandrescu wrote:
>>>> https://pdfs.semanticscholar.org/5de7/591a853ec947f8de7dc70df0b2ecc38b8774.pdf
>> I haven't read the paper yet but doesn't that sound exactly
>> opposite to
>> what 'sum types' is usually used to mean?
>>
>> The value of the variable has to be either A or B. If it
>> stores the
>> status of both then it's basically a struct, right?
>>
>> Probably I'm misunderstanding your point on composition and
>> 'joint API'.
>
> I don't think you are. The paper is using non-standard
> terminology.
You're right. 'Sum' in that paper joins the interfaces, so it's
really 'product' in the fairly standard type theory terminology.
I wish they hadn't done that, it makes communication harder than
it has to be.
Here's a recent post from our cousins in the Rust belt
http://manishearth.github.io/blog/2017/03/04/what-are-sum-product-and-pi-types/
which may make things clearer to people unfamiliar with that
terminology.
More information about the Digitalmars-d
mailing list