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 mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 1A85F7F61E for ; Sat, 4 Nov 2017 20:01:43 +0100 (CET) Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=max.mouratov@outlook.com; spf=Pass smtp.mailfrom=max.mouratov@outlook.com; spf=Pass smtp.helo=postmaster@EUR01-HE1-obe.outbound.protection.outlook.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of max.mouratov@outlook.com) identity=pra; client-ip=40.92.65.60; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="max.mouratov@outlook.com"; x-sender="max.mouratov@outlook.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of max.mouratov@outlook.com designates 40.92.65.60 as permitted sender) identity=mailfrom; client-ip=40.92.65.60; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="max.mouratov@outlook.com"; x-sender="max.mouratov@outlook.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of postmaster@EUR01-HE1-obe.outbound.protection.outlook.com designates 40.92.65.60 as permitted sender) identity=helo; client-ip=40.92.65.60; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="max.mouratov@outlook.com"; x-sender="postmaster@EUR01-HE1-obe.outbound.protection.outlook.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" IronPort-PHdr: =?us-ascii?q?9a23=3AqdK6ahCk0PI4VaFbMnfAUyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSP77o8bcNUDSrc9gkEXOFd2Crakb26yL6+jJYi8p39WoiDg6aptCVhsI24?= =?us-ascii?q?09vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6lX71zMZGw3+OAxp?= =?us-ascii?q?Pay1X9eK14Xkn9y1rtfpYg5IjSCxKYw0CVP+jwLXu9Jcyd94K60x4hLPpHZYeu?= =?us-ascii?q?0QwnlncwG9hRH5s+K57NZG9DlKsu4m6YYUVKzqOaE/UKZREDM4G2co+MnsshqF?= =?us-ascii?q?RgyKsChPGl4KmwZFVlCWpCrxWY38526j7rJw?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DsAQBaDf5ZhjxBXChcHAEBBAEBCgEBg?= =?us-ascii?q?mZLgVUnjxCQI4lCjxUKhCYBgRQChRoUAQEBAQEBAQEBARIBAQEKCQsIKC+COAU?= =?us-ascii?q?BHgEFgj0BAgMnEwYBOAEPAgEDBRgeEDIlAgQODYgnAgEBgVcBAxYCnHMCjWE6g?= =?us-ascii?q?woFg1sBSgODUAEBAQEBBQEBAQEBAQEBGAgBgy2DWoUThFBDg0OCMgWiDoIwlEi?= =?us-ascii?q?ROJVpAgICAgkCEQEBB4E5NoINVSVegmSCTR+Bc3eLE4FVAQEB?= X-IPAS-Result: =?us-ascii?q?A0DsAQBaDf5ZhjxBXChcHAEBBAEBCgEBgmZLgVUnjxCQI4l?= =?us-ascii?q?CjxUKhCYBgRQChRoUAQEBAQEBAQEBARIBAQEKCQsIKC+COAUBHgEFgj0BAgMnE?= =?us-ascii?q?wYBOAEPAgEDBRgeEDIlAgQODYgnAgEBgVcBAxYCnHMCjWE6gwoFg1sBSgODUAE?= =?us-ascii?q?BAQEBBQEBAQEBAQEBGAgBgy2DWoUThFBDg0OCMgWiDoIwlEiROJVpAgICAgkCE?= =?us-ascii?q?QEBB4E5NoINVSVegmSCTR+Bc3eLE4FVAQEB?= X-IronPort-AV: E=Sophos;i="5.44,343,1505772000"; d="scan'208";a="299308755" Received: from mail-oln040092065060.outbound.protection.outlook.com (HELO EUR01-HE1-obe.outbound.protection.outlook.com) ([40.92.65.60]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/AES256-SHA256; 04 Nov 2017 20:01:42 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=6iDa6xrWEPBtCvgOlBqEPTUE0AvbINHVFo3KglJONS4=; b=MhHfXwmUHyjipvmfh46lKA6UV3fVK8Df+yp+cVKgFhOCKvRBhH5LrpnqPl5IZDuYZQIGZeMqu5LVPmdFa9qUK0U8UeyouLxdMaw+IqJDjXgmNow2T20ixV8Nxi6hFClB7GahqmGbtKha8ZzlHf9sxW8BRvrOB4rmMpmtWKBAKTVPpI2J8N+ON1ank2Eo8mhj7HtlLkrML97rAvhlyTxNjWgJO0U8OemD9EJbGv6eMKKY/usqtN9IBAXuxGNTJ+qLx8ZuKi5JAo4E/iYZ09+xaqawCYrbCe+gQLca3JtWZHWOIOaw0xX5kt9UkE7Mnbq8gMPcksxjmlMAHiCGXCbpJg== Received: from DB5EUR01FT062.eop-EUR01.prod.protection.outlook.com (10.152.4.58) by DB5EUR01HT146.eop-EUR01.prod.protection.outlook.com (10.152.5.113) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.20.178.5; Sat, 4 Nov 2017 19:01:41 +0000 Received: from VI1PR0901MB1341.eurprd09.prod.outlook.com (10.152.4.58) by DB5EUR01FT062.mail.protection.outlook.com (10.152.5.167) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.20.178.5 via Frontend Transport; Sat, 4 Nov 2017 19:01:40 +0000 Received: from VI1PR0901MB1341.eurprd09.prod.outlook.com ([fe80::c471:86fd:53a1:489e]) by VI1PR0901MB1341.eurprd09.prod.outlook.com ([fe80::c471:86fd:53a1:489e%14]) with mapi id 15.20.0197.017; Sat, 4 Nov 2017 19:01:40 +0000 From: Max Mouratov To: "Richard W.M. Jones" CC: "caml-list@inria.fr" Thread-Topic: [Caml-list] What if exn was not an open type? Thread-Index: AQHTSYofDG6Wq5wUGkexxt8OKyIgeqLskM0AgAAHJACAAATRAIAGaKoAgABc5YCAEURdgIAABO2A Date: Sat, 4 Nov 2017 19:01:40 +0000 Message-ID: References: <86o9p2ywgc.fsf@gmail.com> <20171020113815.GD32138@nunchakus.loria.fr> <20171024133026.uovvzdbnamnzoknv@annexia.org> <20171104184401.3el2vbha2tgpvse5@annexia.org> In-Reply-To: <20171104184401.3el2vbha2tgpvse5@annexia.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-incomingtopheadermarker: OriginalChecksum:3CABE63E3FD9A36A508359E89B4005D5B0AC5783356E4298F2DF4CAAD329CEC3;UpperCasedChecksum:02313A453671B57297A6D9FA9046EA7EB7AE65BE8747A5429A8F4C54BED3E529;SizeAsReceived:7483;Count:47 x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [MT2CD3S13nOSwLD4iYcYjEcB88p06Bho] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;DB5EUR01HT146;6:W62RqwHth8DlSqSBamBpHqTnxp7vwgZuLNv8MTqSHWqWdAxl3wrDbFLREqWoa31ntIDwF3rhjqEOT+JFrbeId6gnppIDLTMLi6s+4h8PV2+V7454WzrCE/KOB2jHuZeLjdrkv+CXzaxlMsdY0jdROPsxdQ4OU2NsucHe0WU7XG3UVAXcEUn6Cr5890RvvS2TT+HDKfMa/SYU8LQFZJ0RIBBrGp6F7T/FxpjVGsEDWb+12RNnTk1QywFLwjWRCxy3sqHaaQcNkHrJyFzh1H2AhWz4JvHSRRSl+LRhmj4pM2+nHyqwnv5JF70HPMHmrvRYXvj/6cSxYpC5Yygu8s3d5J+HFfD83sRnQRL8ZuvpvNY=;5:Mb9IJV3QerVgyYkQ5MM8HRb8MuK2xnWPYDsNz/Lsug4p2zHpz3qf+4jgg71T9S6FqXQs3/6bZHAGvF2fnl3WE4VLce4eI0lA2F1R6sJldmusbJQH91FZ31SpdCTHMpskaahc/p2HaIlolq12LoImYdo49PFQxtfMZ9TsgnYp+gY=;24:8gnqky0nFP2SyCL+a16Z/4f5zPV+l8H6pEzae+nGS7r/KkFvHUqIUU6M71xmmPFjrybfNOJLxSXUBUtbXm0KMjF6W/o7D6iLkEYQFzn6tpc=;7:KFb0cXM97Nlu4zYvZ4zVnTEjQEvPvQWxmPtOQCOl+9cJmR6aUu1ZjSCS3oqb189/JKzkK5adEHT1WydnQ930XpZGbAYKJHpNgpVuiMITDo9tew6kqsQmEvtvEnQ1vu3vwwpAsEO9JO9vrJQ0bfNNdwTjB0pf72YRKlc8SDG8ct5nA0lJj3KEcjQpe148wX7OOg0T9K33ITjts909ZlAz+tZm/2LQeLIKbnEcC+WHW2c3sLxfoOmSYGqgii7lhk1G x-incomingheadercount: 47 x-eopattributedmessage: 0 x-ms-office365-filtering-correlation-id: 1a90fde9-5636-40e0-b285-08d523b67b5e x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(201702061074)(5061506573)(5061507331)(1603103135)(2017031320274)(2017031324274)(2017031323274)(2017031322404)(1603101448)(1601125374)(1701031045);SRVR:DB5EUR01HT146; x-ms-traffictypediagnostic: DB5EUR01HT146: x-exchange-antispam-report-test: UriScan:; x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(444000031);SRVR:DB5EUR01HT146;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:DB5EUR01HT146; x-forefront-prvs: 048111149A x-forefront-antispam-report: SFV:NSPM;SFS:(7070007)(98901004);DIR:OUT;SFP:1901;SCL:1;SRVR:DB5EUR01HT146;H:VI1PR0901MB1341.eurprd09.prod.outlook.com;FPR:;SPF:None;LANG:; spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="us-ascii" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1a90fde9-5636-40e0-b285-08d523b67b5e X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Nov 2017 19:01:40.7523 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Internet X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5EUR01HT146 X-Validation-by: max.mouratov@outlook.com Subject: Re: [Caml-list] What if exn was not an open type? Saturday, November 4, 2017, 11:44:01 PM, Richard wrote: > The problem is that the return statement could be called from many > contexts, all with different types. The compiler expects to unify all > these types (as the same type 'b) which is not possible. See how it's done in Batteries: type 'a t =3D 'a -> exn let return label value =3D raise (label value) let label (type u) (f : u t -> u) : u =3D let module M =3D struct exception Return of u end in try f (fun x -> M.Return x) with M.Return u -> u