From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id DDE017EE48 for ; Sun, 25 Jan 2015 11:11:42 +0100 (CET) Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of dra-news@metastack.com) identity=pra; client-ip=62.13.148.113; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="dra-news@metastack.com"; x-sender="dra-news@metastack.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of dra-news@metastack.com designates 62.13.148.113 as permitted sender) identity=mailfrom; client-ip=62.13.148.113; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="dra-news@metastack.com"; x-sender="dra-news@metastack.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@outmail148113.authsmtp.com) identity=helo; client-ip=62.13.148.113; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="dra-news@metastack.com"; x-sender="postmaster@outmail148113.authsmtp.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AvoBAMzAxFQ+DZRxl2dsb2JhbABagmSBUYJ8sHQGmDECHHFDAQEBAQERAQEBAQEIFgdChAwBAQEDAQMgBA1FBQsCAQgYAgIGIAICAjAVEAIEDg2IHAkDvWGTfAEBAQEGAQEBAQEBAQEagSGEY4lDMQeCaC6BEwWMfYsShx6LHoQQgjN+AQEB X-IPAS-Result: AvoBAMzAxFQ+DZRxl2dsb2JhbABagmSBUYJ8sHQGmDECHHFDAQEBAQERAQEBAQEIFgdChAwBAQEDAQMgBA1FBQsCAQgYAgIGIAICAjAVEAIEDg2IHAkDvWGTfAEBAQEGAQEBAQEBAQEagSGEY4lDMQeCaC6BEwWMfYsShx6LHoQQgjN+AQEB X-IronPort-AV: E=Sophos;i="5.09,463,1418079600"; d="scan'208";a="97614204" Received: from outmail148113.authsmtp.com ([62.13.148.113]) by mail3-smtp-sop.national.inria.fr with ESMTP; 25 Jan 2015 11:11:42 +0100 Received: from mail-c237.authsmtp.com (mail-c237.authsmtp.com [62.13.128.237]) by punt17.authsmtp.com (8.14.2/8.14.2/) with ESMTP id t0PABPFE010635; Sun, 25 Jan 2015 10:11:25 GMT Received: from romulus.metastack.com (cpc1-cmbg5-0-0-cust241.5-4.cable.virginm.net [81.98.252.242]) (authenticated bits=0) by mail.authsmtp.com (8.14.2/8.14.2/) with ESMTP id t0PABN7T009142; Sun, 25 Jan 2015 10:11:24 GMT Received: from remus.metastack.local (remus.metastack.com [172.16.0.1]) by romulus.metastack.com (8.14.2/8.14.2) with ESMTP id t0PABM4M010879 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Sun, 25 Jan 2015 10:11:23 GMT Received: from Remus.metastack.local ([fe80::547c:3c42:e1da:eda2]) by Remus.metastack.local ([fe80::547c:3c42:e1da:eda2%10]) with mapi id 14.03.0224.002; Sun, 25 Jan 2015 10:11:22 +0000 From: David Allsopp To: Mailing List OCaml CC: Jordan W Thread-Topic: [Caml-list] Explicit Arity with Polymorphic Variants Thread-Index: AQHQNtl6Q25l7W7x0U2j9Jk6Y2jO25zNWHSAgAARKoCAAY7EgIABhJIAgAAZwXA= Date: Sun, 25 Jan 2015 10:11:21 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [213.205.232.231] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Organization: MetaStack Solutions Ltd. X-Scanned-By: MIMEDefang 2.65 on 172.16.0.20 X-Server-Quench: 847c2bb7-a47a-11e4-9f74-002590a135d3 X-AuthReport-Spam: If SPAM / abuse - report it at: http://www.authsmtp.com/abuse X-AuthRoute: OCd1ZAARAlZZVg1f DC4bFwdFRBksPQFF ChxFJgxfNl8UURhQ KkJXbgASJgdBAnNQ XXkJW1VRQFxxU2J0 YQhVIw1cfENGQQdv UlZLRlBNFgB3AVJF Bn5vIGd1EwVGcX90 ZwhjWXFaWgpycUEu QBwGEnBXYWAxdWEe BURFflVTdB5Kfh1A Y1AuVXAINWZJBA9q VzwYNjU1eDFeMzhg CiwdNVYTSkcXVhcm RgwTVSouAU1NfyI3 PhkhMEYcHU1ZDEwo MFInRUlw X-Authentic-SMTP: 61633634383431.1024:706 X-AuthFastPath: 0 (Was 255) X-AuthSMTP-Origin: 81.98.252.242/25 X-AuthVirus-Status: No virus detected - but ensure you scan with your own anti-virus system. Subject: RE: [Caml-list] Explicit Arity with Polymorphic Variants Sm9yZGFuIFcgd3JvdGU6DQo+IEl0IHNvdW5kcyBsaWtlIHRoaXMgaGFzIG5v dGhpbmcgdG8gZG8gd2l0aCBwb2x5bW9ycGhpYyB2YXJpYW50cw0KPiBub3Qg cmVxdWlyaW5nIGEgdHlwZSBkZWZpbml0aW9uLg0KDQpObywgaXQgc3RpbGwg aGFzIGV2ZXJ5dGhpbmcgdG8gZG8gd2l0aCBpdCEgKEknbSBub3Qgc3VyZSBJ IGFncmVlIHdpdGggR2FicmllbCdzIGFzc2Vzc21lbnQgdGhhdCB0aGVyZSB3 YXMgYSBsYWNrIG9mIG5lZWQgZm9yIHBvbHltb3JwaGljIHZhcmlhbnRzIHRv IHN1cHBvcnQgYm90aCB2YXJpYW50cyAtIEkgd291bGQgdGhpbmsgaXQgd2Fz IGNvbnNpZGVyZWQgdG8gYmUgYSBiYWQgaWRlYS4uLiBidXQgSSdtIHN1cmUg SmFjcXVlcyBjYW4gc2F5IHdoYXQgaGUgdGhvdWdodCEpLg0KDQo+IEkgYWdy ZWUgaXQncyBhbiB1Z2x5IGhhY2ssIGJ1dCBvbmUgdGhhdCBzZWVtcyB0byBh Y2NvbXBsaXNoIHNvbWV0aGluZw0KPiBvZiB2YWx1ZS4gVGhlcmUgYXJlIHR3 byBkaXN0aW5jdGlvbnMgdGhhdCBJIGtub3cgb2YgYmV0d2VlbiBzaW5nbGUg DQo+IGFyZ3VtZW50IHR1cGxlIGNvbnN0cnVjdG9ycyBhbmQgbXVsdC1hcmd1 bWVudCBjb25zdHJ1Y3RvcnM6DQo+DQo+IDEuIE1lbW9yeSBsYXlvdXQgaXMg ZGlmZmVyZW50IChJcyB0aGlzIHN0aWxsIHRoZSBjYXNlKT8NCg0KWWVzIC0g Zm9yIHRoZSB0dXBsZSBjYXNlLCB0aGUgc3RhbmRhcmQgdmFyaWFudCBpcyBh IGJsb2NrIG9mIHNpemUgb25lIHBvaW50aW5nIHRvIHRoZSB0dXBsZSwgZm9y IHRoZSBmbGF0IGNhc2UgaXQgaGFzIHNpemUgbiB3aGVyZSBuIGlzIHRoZSBh cml0eSBvZiB0aGUgY29uc3RydWN0b3IuIEluIGJvdGggY2FzZXMgdGhlIGJs b2NrIGlzIHRhZ2dlZCB3aXRoIHRoZSBjb25zdHJ1Y3RvciBudW1iZXIgZnJv bSB0aGUgdHlwZSBkZWZpbml0aW9uLg0KDQo+IDIuIEZpcnN0LWNsYXNzbmVz cyBvZiBhcmd1bWVudHMgaXMgZGlmZmVyZW50LiBXaXRoIGEgc2luZ2xlIGFy Z3VtZW50IA0KPiB0dXBsZSwgdGhlIGNvbnRlbnRzIGNhbiBiZSBwYXNzZWQg YXJvdW5kIGFuZCB0aGVuIGZpbmFsbHkgcGxhY2VkIGludG8gDQo+IHRoZSBj b25zdHJ1Y3RvciB3aXRob3V0IGFueSBvdmVyaGVhZCBvZiBkZXN0cnVjdHVy aW5nL3Jlc3RydWN0dXJpbmcuDQoNClRoZSBkZXN0cnVjdHVyaW5nIGlzIGFs bW9zdCBhbHdheXMgdXNlZnVsLCBJIHRoaW5rPyBJIGNhbid0IGltYWdpbmUg YSBjYXNlIHdoZXJlIG5vdCBiZWluZyBhYmxlIHRvIG1hdGNoIG9uIGp1c3Qg dGhlIHR1cGxlIGlzIHNvbWV0aGluZyB5b3UnZCB3YW50IHRvIGF2b2lkLiBU aGUgcmVhc29uIGZvciBoYXZpbmcgdGhlIHR3byBsYXlvdXRzIGZvciBzdGFu ZGFyZCB2YXJpYW50cyBpcyBiZWNhdXNlIHRoZSBtZW1vcnkgbGF5b3V0IGlz IG1vcmUgZWZmaWNpZW50IGluIHRoZSBmbGF0IGNhc2UsIHNvIGlmIHlvdSBk b24ndCBuZWVkIHRvIGJlIGFibGUgdG8gbWF0Y2ggb24ganVzdCB0aGUgdHVw bGUgdGhlbiB5b3UgY2FuIGdldCBhIHNtYWxsIGJlbmVmaXQgaW4gbWVtb3J5 IGVmZmljaWVuY3kgYnkgZGVjbGFyaW5nIHRoYXQuDQoNCkZvciBwb2x5bW9y cGhpYyB2YXJpYW50cywgd2hlcmUgdGhlcmUncyBubyB0eXBlIGRlZmluaXRp b24sIGl0IG1ha2VzIHNlbnNlIHRoYXQgdGhlIHR1cGxlIHZlcnNpb24gaXMg dGhlIGxheW91dCBmb3IgdGhlIHNhbWUgcmVhc29uIC0gZXNwZWNpYWxseSBh cyBwb2x5bW9ycGhpYyB2YXJpYW50cyBhcmUgbGVzcyBtZW1vcnktZWZmaWNp ZW50IHRoYW4gc3RhbmRhcmQgdmFyaWFudHMgYW55d2F5Lg0KDQo+IEJvdGgg b2YgdGhlc2Ugc2VlbSBsaWtlIGRlc2lyYWJsZSBjb250cm9scyB0byBoYXZl IGFuZCBwb3NzaWJseSBqdXN0aWZpZXMNCj4gdGhlIGV4aXN0ZW5jZSBvZiBo YXZpbmcgdHdvIG1vZGVzLiBVbmRlciB0aGF0IGFzc3VtcHRpb24sIGhhdmlu ZyBzb21lIHdheSANCj4gdG8gZGVzaWduYXRlIGluIHRoZSBwYXJzZSB0cmVl IHdoaWNoIGlzIGludGVuZGVkIChhdCB0aGUgcGF0dGVybiBvciBleHByZXNz aW9uDQo+IGxldmVsKSBzZWVtcyBsaWtlIGEgZ29vZCBpZGVhIC0gYW5kIGV2 ZW4gaWYgdGhhdCBtZWNoYW5pc20gaXMgdGhlIHVnbHkgDQo+IGBleHBsaWNp dF9hcml0eWAgaGFjay4gU28gSSB1bmRlcnN0YW5kIHRoZSBqdXN0aWZpY2F0 aW9uIGZvciB0aGUgY3VycmVudCBzdGF0ZQ0KPiBvZiB0aGUgd29ybGQuDQo+ IEknbSBjdXJpb3VzIHdoeSB0aGVyZSBpcyBub3Qgc29tZSB3YXkgdG8gYWNo aWV2ZSB0aGUgc2FtZSB3aXRoIHBvbHltb3JwaGljIA0KPiB2YXJpYW50cyAo ZXZlbiBpZiB0aGF0IGlzIGFsc28gYSBoYWNrKS4gQXJlIHlvdSBzYXlpbmcg aXQgd2FzIHNpbXBseSBiZWNhdXNlIA0KPiB0aW1lIGhhcyBub3QgcGVybWl0 dGVkIGl0PyBMb29raW5nIGRlZXBlciwgaXQgc2VlbXMgcG9seW1vcnBoaWMg dmFyaWFudHMgYXJlIA0KPiBpbmNhcGFibGUgb2YgYWNjZXB0aW5nIG11bHRp cGxlIGFyZ3VtZW50cyBhbmQgb25seSBldmVyIGFjY2VwdCBhIHNpbmdsZSB0 dXBsZSANCj4gKHdoaWNoIGlzIHRoZXJlZm9yZSBhbGxvd2VkIHRvIGJlIGZp cnN0IGNsYXNzKS4NCg0KWW91IGNhbid0IGhhdmUgYm90aCBtZW1vcnkgbGF5 b3V0cyBmb3IgcG9seW1vcnBoaWMgdmFyaWFudHMgd2l0aG91dCBoYXZpbmcg YSB0eXBlIGFubm90YXRpb24gdG8gZGlzdGluZ3Vpc2ggYmV0d2VlbiB0aGVt LiBTdXBwb3NlIHlvdSBoYXZlIHdoYXQgeW91IHdhbnQsIGFuZCBbQGV4cGxp Y2l0X2FyaXR5XSBpcyB0aGUgd2F5IHRvIGNyZWF0ZSB0aGVtOg0KDQpOb3Jt YWwgdHVwbGUgY2FzZToNCg0KIyBgRm9vICgxLCAyKTs7DQotIDogWz4gYEZv byBvZiAoaW50ICogaW50KSBdID0gYEZvbyAoMSwgMikNCg0KUHJvcG9zZWQg ZmxhdCBjYXNlOg0KDQojIGBGb28oMSwgMikgW0BleHBsaWNpdF9hcml0eV07 Ow0KLSA6IFs+IGBGb28gb2YgaW50ICogaW50IF0gPSBgRm9vICgxLCAyKQ0K DQpTbyB0aGF0IGludHJvZHVjZXMgYW5vdGhlciBsZXZlbCBvZiBvYnNjdXJl IGNvbXBsZXhpdHkgdG8gcG9seW1vcnBoaWMgdmFyaWFudHMgYWxyZWFkeSBv ZnRlbi1vYnNjdXJlIHR5cGUgZXJyb3IgbWVzc2FnZXMhIEFuZCBub3RlIHRo YXQgdGhlIHR5cGUgZGVmaW5pdGlvbnMgZm9yIHBvbHltb3JwaGljIHZhcmlh bnRzIHdvdWxkIGJlIHRoZSBvdGhlciB3YXkgYXJvdW5kIGZyb20gcmVndWxh ciB2YXJpYW50cyBiZWNhdXNlIFs+IGBGb28gb2YgaW50ICogaW50IF0gYWxy ZWFkeSBtZWFucyB1c2UgYSB0dXBsZS4gU28gZm9yIGEgdmFyaWFudCBGb28g b2YgaW50ICogaW50IG1lYW5zIGZsYXQgYnV0IGZvciBhIHBvbHltb3JwaGlj IHZhcmlhbnQgYEZvbyBvZiBpbnQgKiBpbnQgbWVhbnMgYSB0dXBsZS4gTmlj ZSEgKGFuZCB1bmF2b2lkYWJsZSAtIGNoYW5naW5nIHRoYXQgc3ludGF4IHdv dWxkIGJyZWFrIGFsbCB0eXBlIGFubm90YXRpb25zIGZvciBwb2x5bW9ycGhp YyB2YXJpYW50cyBpbiBleGlzdGluZyBjb2RlKQ0KDQpJbiBteSBvcGluaW9u LCBpdCB3b3VsZCBhbHNvIGJlIHF1aXRlIGhpZGVvdXMgdG8gYmUgYWxsb3dp bmcgdmFsdWVzIG9mIGJvdGggdHlwZXMgdG8gZmxvYXQgYXJvdW5kLiBJdCB3 b3VsZG4ndCBiZSBwcmV0dHkgdG8gaGF2ZToNCg0KbGV0IGZvbyA9IGBGb28g KDEsIDIpDQphbmQgYmFyID0gYEZvbyAoMSwgMikgW0BleHBsaWNpdF9hcml0 eV0NCg0KZ2l2aW5nIGZvbyA8PiBiYXIgKGFuZCBpdCB3b3VsZCBiZSBhIHNp bWlsYXJseSBub3QgbmljZSB0byBpbnRyb2R1Y2UgYSB0eXBlLWxldmVsIGhh Y2sgdG8gYWxsb3cgc3VjaCBjYXNlcyB0byBiZSBlcXVhbCkuIEl0IHdvdWxk IGFsc28gYWxsb3cgc29tZSBvZiB0aGUgYWxyZWFkeSBlbnRlcnRhaW5pbmcg YWNjaWRlbnRhbCB0eXBlIGVycm9ycyB3aXRoIGZ1bmN0aW9ucyB0byBpbmNs dWRlIHN1Y2ggaG9ycm9ycyBhcyBpbiB0aGlzIGNvbnRyaXZlZCBleGFtcGxl Og0KDQojIGxldCBmID0gZnVuY3Rpb24gYEZvbyAocyA6IHN0cmluZyAqIHN0 cmluZykgLT4gZnN0IHMNCnZhbCBmIDogWzwgYEZvbyBvZiBzdHJpbmcgKiBz dHJpbmcgXSAtPiBzdHJpbmcgPSA8ZnVuPg0KIyBsZXQgZyA9IGZ1bmN0aW9u IGBGb28gKChmc3QgOiBzdHJpbmcpLCAoXyA6IHN0cmluZykpIFtAZXhwbGlj aXRfYXJpdHldIC0+IGZzdDs7DQp2YWwgZyA6IFs8IGBGb28gb2YgKHN0cmlu ZyAqIHN0cmluZykgXSAtPiBzdHJpbmcgPSA8ZnVuPg0KIyBsZXQgaCBiIHgg PSBpZiBiIHRoZW4gZiB4IGVsc2UgZyB4OzsNCnZhbCBoIDogYm9vbCAtPiBb PCBgRm9vIG9mIHN0cmluZyAqIHN0cmluZyAmIChzdHJpbmcgKiBzdHJpbmcp IF0gLT4gc3RyaW5nID0gPGZ1bj4NCg0KSXQncyBhbHJlYWR5IGJhZCBlbm91 Z2ggd2hlbiB0aGVzZSBlcnJvcnMgYXJpc2UgYnkgYWNjaWRlbnQgd2hlcmUg dGhlIHR5cGVzIGRpZmZlciBieSBtb3JlIHRoYW4ganVzdCBzb21lIGJyYWNr ZXRzIQ0KDQpTbywgbm8gLSBJIGRvbid0IHRoaW5rIHRoYXQgdGhlIHR3byBs YXlvdXRzIGZvciBwb2x5bW9ycGhpYyB2YXJpYW50cyBhcmVuJ3QgYXZhaWxh YmxlIGJlY2F1c2Ugb2YgdGltZSB0byBpbXBsZW1lbnQuIEkgdGhpbmsgdGhh dCAqYmVjYXVzZSBvZiB0aGUgbGFjayBvZiBhIGNvbmNyZXRlIHR5cGUgZGVm aW5pdGlvbiBmb3IgdGhlbSogKHdoaWNoIGlzIHRoZSBwb2ludCwgYWZ0ZXIg YWxsKSB0aGF0IGhhdmluZyBib3RoIGxheW91dHMgd291bGQgaGF2ZSBjb25z aWRlcmFibHkgY29tcGxpY2F0ZWQgdGhlbSBmb3IgdXNlcnMsIHJhdGhlciB0 aGFuIGRldmVsb3BlcnMuIA0KDQo+IEkgZG8gd2lzaCBPQ2FtbCB1c2VkIHRo ZSByZXZpc2VkIHN5bnRheCdzIHN5bnRhY3RpYyBkaXN0aW5jdGlvbiBiZXR3 ZWVuIHRoZSB0d28gbW9kZXMgd2hpY2ggaXMgd2hhdCBJJ20NCj4gY3VycmVu dGx5IGV4cGVyaW1lbnRpbmcgd2l0aC4NCg0KSG93ZXZlciwgdGhhdCBhcmd1 bWVudCBzZWVtcyB0byBiZSBsb25nLWRvbmUgKGVzcGVjaWFsbHkgd2l0aCBj YW1scDQsIHdoaWNoIEkgYmVsaWV2ZSB3YXMgdGhlIG9yaWdpbmFsIGRyaXZp bmcgZm9yY2UgYmVoaW5kIHRoZSByZXZpc2VkIHN5bnRheCwgaGF2aW5nIGJl ZW4gcmVtb3ZlZCBmcm9tIHRoZSBvZmZpY2lhbCBjb21waWxlcikNCg0KDQpE YXZpZA0KDQo=