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 650378239C for ; Sat, 3 Feb 2018 00:07:08 +0100 (CET) Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=toby.kelsey@gmail.com; spf=Pass smtp.mailfrom=toby.kelsey@gmail.com; spf=None smtp.helo=postmaster@mail-wm0-f42.google.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of toby.kelsey@gmail.com) identity=pra; client-ip=74.125.82.42; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="toby.kelsey@gmail.com"; x-sender="toby.kelsey@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of toby.kelsey@gmail.com designates 74.125.82.42 as permitted sender) identity=mailfrom; client-ip=74.125.82.42; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="toby.kelsey@gmail.com"; x-sender="toby.kelsey@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-wm0-f42.google.com) identity=helo; client-ip=74.125.82.42; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="toby.kelsey@gmail.com"; x-sender="postmaster@mail-wm0-f42.google.com"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3A33B+ghM1Bmawf9MVPZYl6mtUPXoX/o7sNwtQ0KIM?= =?us-ascii?q?zox0Lf79rarrMEGX3/hxlliBBdydt6odzbKO+4nbGkU4qa6bt34DdJEeHzQksu?= =?us-ascii?q?4x2zIaPcieFEfgJ+TrZSFpVO5LVVti4m3peRMNQJW2aFLduGC94iAPERvjKwV1?= =?us-ascii?q?Ov71GonPhMiryuy+4ZLebxlViDanfb9+MAi9oBnMuMURnYZsMLs6xAHTontPde?= =?us-ascii?q?RWxGdoKkyWkh3h+Mq+/4Nt/jpJtf45+MFOTav1f6IjTbxFFzsmKHw65NfqtRbY?= =?us-ascii?q?UwSC4GYXX3gMnRpJBwjF6wz6Xov0vyDnuOdxxDWWMMvrRr0yRD+s7bpkSAXwhS?= =?us-ascii?q?kaKTA5/mHZhM9+gq1Vrx2upQBwzYHPbYGJN/dzZL/Rcc8USGdDWMtaSixPApm7?= =?us-ascii?q?b4sKF+cPI+FYoJL9plATqBWxGw2sBPjxxT5Im3T72rE60+M6HgDGxgAgHMwBsH?= =?us-ascii?q?DPrNrrNKYfSu+1zKzSwjXCa/Nawyvy6I/Nch04p/yHQLF+cdLJxEQtGA7JlEic?= =?us-ascii?q?pZLlMj+P1ekBrXKX4uV+We63lWIrsRx9riaxyss2lIXFmp8Zxkra+Sh33oo4I8?= =?us-ascii?q?CzRlRhbt6+CpRQsjmXN4toTcMmRGFloCM6xacHuZ6/ZSQLxpEnywLGZ/yJfIWE?= =?us-ascii?q?/AjvVOmWITd/i3JlfKywiwyu/kinz+3wTsi00FBUoSpZitTBtH8A2wbO5sSZSv?= =?us-ascii?q?Zx5ESs1SiV2w3c9O1IOUU0mrDaK54lzL4wjJ0TsUHbEy/qn0X5l6+Xel8n+ue2?= =?us-ascii?q?7+Tneavpp5+HOo97jwHxKKUumsilDeskNQgOWnCX+f6g27374U35XLJKg+Uqna?= =?us-ascii?q?bDtZDaId0Xpqq4Aw9OzoYu8A2/Djej0NQAh3YLNlNFeBSdj4joIV7COv74De3s?= =?us-ascii?q?y2irxTxiwvSDOrz6Hr3MKGLCmfHvZ+VT8UlZnTY0x8EXxJ9QEbwQaKbvXUXg8t?= =?us-ascii?q?/VCgQ0IiS7xu/mDJN20YZICjHHObOQLK6H6QzA3ekoOeTZPNZE6ga4EOAs4rvV?= =?us-ascii?q?tVF8nFYceaez2p5OMSK3G/1nJwOSZn++245dQ1dPhRI3SanRsHPHSSRaPi/gUK?= =?us-ascii?q?c15zV9A4WjX9+aG9KdxYeZ1SL+JaV4I2BLDlfWTCXtfoSAHugJMGecfpUnnTsD?= =?us-ascii?q?WrysDYQm0EP2uQ=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0CHAQCZ7XRahipSfUpdHAEBAQQBAQoBA?= =?us-ascii?q?YQ6gRWDZZhSgVsniguPVQqFOwKCOBkHBDQUAQEBAQEBAQEBAQESAQEBCAsLCCg?= =?us-ascii?q?vgjgigkoBBSMPAQUIARseAwwGAwILDQICJgICIxEBBQEcEwgBAYoYAQMVBJYMk?= =?us-ascii?q?R1AjBeCBQUBHIMLBYFwgW8KGScNWViCBgEBAQEGAQEBARwCBgkBCH2DWoIVgVe?= =?us-ascii?q?BaCkMgnmFboJLgmUFpCSCSpMmjCMRiACXRAIEAgQFAgYUJYEXNoFyMxojUjKCF?= =?us-ascii?q?IJGH4ISeIwtAQEB?= X-IPAS-Result: =?us-ascii?q?A0CHAQCZ7XRahipSfUpdHAEBAQQBAQoBAYQ6gRWDZZhSgVs?= =?us-ascii?q?niguPVQqFOwKCOBkHBDQUAQEBAQEBAQEBAQESAQEBCAsLCCgvgjgigkoBBSMPA?= =?us-ascii?q?QUIARseAwwGAwILDQICJgICIxEBBQEcEwgBAYoYAQMVBJYMkR1AjBeCBQUBHIM?= =?us-ascii?q?LBYFwgW8KGScNWViCBgEBAQEGAQEBARwCBgkBCH2DWoIVgVeBaCkMgnmFboJLg?= =?us-ascii?q?mUFpCSCSpMmjCMRiACXRAIEAgQFAgYUJYEXNoFyMxojUjKCFIJGH4ISeIwtAQE?= =?us-ascii?q?B?= X-IronPort-AV: E=Sophos;i="5.46,451,1511823600"; d="scan'208";a="311871354" Received: from mail-wm0-f42.google.com ([74.125.82.42]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 03 Feb 2018 00:07:07 +0100 Received: by mail-wm0-f42.google.com with SMTP id f71so15653334wmf.0 for ; Fri, 02 Feb 2018 15:07:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding:content-language; bh=9SpYBkR3ogKmYofNdw49kD4QbgKnx6QmDIHzoeZZjQg=; b=oLcJ+UgMoT/DfzbHs0kIUL7eec1uCUSx9g0td3pLa9Wu0aoOzT1MPrAGQ5Bsm99mwO TKYVZJqYzp/c+9upIzysU9zK9EQD8IQALcPPZylQU/sHwsQ3t6UtxLwU0ywt86LaOgzB kzPqxiwD51mzUmmTyGL/FS80j/M6raA/djwMLNjaKIy+WPnh/GW30VOT1cV1bvU6gpCC Gjuwwww2Wp4LfYn/4HX32TEPMZ/SbhXtyPx88sABdqzqBZo83kIcUfCYHlhMQfHXzMSN wMV8PDKTtT1+rH3IP6bhH59+SiKXemAnuxRM0sGdTkTi9zRRjoo7P6Duqk17PLOSGIRC qstw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=9SpYBkR3ogKmYofNdw49kD4QbgKnx6QmDIHzoeZZjQg=; b=J+qwUFg/pS/qIrQqUXlgShGMw7ohv7OnAOYgfCkwWB9uf3KBYTgBD/02yeQxT/VYmU sZ9XG7pVZfHY/KhaGKrU0897gu9YSdsQH6MwxFE2P4y8tJ/hj1py7al53nX8bu8S98d0 Kj/LUbIB9Ixrx2CkXfqV+xgkCA9L/ME6H5BMHeRFzS7rRV6EQ1kR8Lt8gXVC12WR44pn v81IVCA/wmxGm+rgpzEfUAmlUfFMajN30uW2yCHXVESZjriUugLO4RYJG+R6keMWanbn yopEt5gyvtPQUnasjcxOMRJwtjPR8ycbv4XxSY9pl+3B9WFgMuafJoXfT0EC3pgHncH2 cEFg== X-Gm-Message-State: AKwxytfdk28VzVA4bo2oHePmrXsgPj1SoockYbU9LuFlatyPqWe2LEIo rUBuAAmJdyGZ6aLUloF69ChtQfjc X-Google-Smtp-Source: AH8x224xb4PdvAr4UiIeqO9Inx4k0GAD5ig1/YakWSnx8WouOEeeIY5zwRHSfiVS+k1vlS9DMDrJ+Q== X-Received: by 10.28.169.200 with SMTP id s191mr31891138wme.9.1517612827421; Fri, 02 Feb 2018 15:07:07 -0800 (PST) Received: from [192.168.1.69] ([2.122.201.232]) by smtp.gmail.com with ESMTPSA id a2sm6812405wrc.53.2018.02.02.15.07.06 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 02 Feb 2018 15:07:06 -0800 (PST) To: caml-list@inria.fr References: <20180123145453.GA1916@Magus.localnet> <4C24893D-6053-4F0D-BFDD-DF76172E64F9@math.nagoya-u.ac.jp> From: Toby Kelsey Message-ID: <2e9462f5-4042-230f-104b-943f1e2ebe76@gmail.com> Date: Fri, 2 Feb 2018 23:07:05 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: <4C24893D-6053-4F0D-BFDD-DF76172E64F9@math.nagoya-u.ac.jp> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-GB Subject: Re: [Caml-list] Are record types generative? On 24/01/18 08:43, Jacques Garrigue wrote: > I.e., types can be used to optimize a program, but they do not change its semantics. > It’s true of so-called “overloaded” record labels, it’s true of a labeled and default arguments > (which use type information for compilation, but not semantics), it’s true of objects, > it’s true of GADT pattern-matching (again optimized), etc… type foo = { x : int } type bar = { x : string } let f r = r.x           (* OK: uses bar *) let f r = (r:foo).x  (* OK: uses foo *) let f r = (r.x : int) (* type error - wrong type inferred *) Aren't the semantics different? 'f' has different types in the first two definitions, And why does type inference fail for the last example? Toby