From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by c5ff346549e7 (Postfix) with ESMTPS id DDD355D5 for ; Wed, 29 Dec 2021 17:52:12 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.88,246,1635199200"; d="scan'208,217";a="12932945" Received: from prod-listesu18.inria.fr (HELO sympa.inria.fr) ([128.93.162.160]) by mail2-relais-roc.national.inria.fr with ESMTP; 29 Dec 2021 18:52:12 +0100 Received: by sympa.inria.fr (Postfix, from userid 20132) id D0A26E01A8; Wed, 29 Dec 2021 18:52:11 +0100 (CET) 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 70C14E0120 for ; Wed, 29 Dec 2021 18:52:06 +0100 (CET) Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=nicolas.ojeda.bar@lexifi.com; spf=Pass smtp.mailfrom=nicolas.ojeda.bar@lexifi.com; spf=Pass smtp.helo=postmaster@FRA01-PR2-obe.outbound.protection.outlook.com IronPort-PHdr: =?us-ascii?q?A9a23=3AmADdyBV1Zzwnani6RNLf4E7kuTzV8KwLUjF92vM?= =?us-ascii?q?cY1JmTK2v8tzYMVDF4r011RmVB9ydsqgdwLOO7ujJYi8p2d65qncMcZhBBVcuq?= =?us-ascii?q?P49uEgeOvODElDxN/XwbiY3T4xoXV5h+GynYwAOQJ6tL1LdrWev4jEMBx7xKRR?= =?us-ascii?q?6JvjvGo7Vks+7y/2+94fcbglWmTaxe65+IAuroQneq8UanYtvIbstxxXUpXdFZ?= =?us-ascii?q?/5Yzn5yK1KJmBb86Maw/Jp9/ClVpvks6c1OX7jkcqohVbBXAygoPG4z5M3wqBn?= =?us-ascii?q?MVhCP6WcGUmUXiRVHHQ7I5wznU5jrsyv6su192DSGPcDzULs5Vyiu47ttRRT1k?= =?us-ascii?q?yoMKSI3/3/LhcxxlKJboQyupxpjw47PfYqZMONycr7Bcd8GQGZMWNtaWS5cDYO?= =?us-ascii?q?md4YBD/QPM/tEr4fzpFUOoxmxChWjC+700DBEmmP60Lcm3+g9DA3L2hErEdIUs?= =?us-ascii?q?HTTqdX4LL8cUeGpw6nPyTXEbehW1i/k5ojKbB8uvOuDUqptfM3U00kkCgTIjlO?= =?us-ascii?q?RqYP5ODOV0v4Cs3OB4+pnV+KglXMopBtrrje03MgskJLEhoYLxVHL9CV5zoc1K?= =?us-ascii?q?cekR058ZN6pCZ1dvDyVOIVqWM0tWX1ouDokxb0cv562ZCYHxZooyhPddfGKfIi?= =?us-ascii?q?F7B3sWeifPTp2imxoda6jixuz80Wt1+/xW8qp3VtUridIk9rBu3QQ2hHT5caLV?= =?us-ascii?q?uVw8Ein1D2S2Q7T7eRELlo1lardM5MhxaI/mYAWsUTHBCP2n1/2jKCQe045+ea?= =?us-ascii?q?o8/zqb7r6qpOGKoN4lgPzPr4zlsChG+g0LxUCUmuD9eii1bDv4UP0TbBXgvEqi?= =?us-ascii?q?KbUsZXXKdkHqqKnBgJZz4gj5hS6AjqjzdgVmX8KJ09fdh2dlYjmIVTOLej4Dfi?= =?us-ascii?q?hh1Ssly9myfDaMLD9HpnBM2HPnq39c7pj8kJczxE8ws5F65JTF7EBPOn8Wkjst?= =?us-ascii?q?NzeExA1KRS0w/zgCNVhyIwRRX6PAq6eMKPUq1OI4f8vI/WIZI8Svzb9KOIp6OL?= =?us-ascii?q?pjX88gVMdfK+p0oULaH2gEflqP1+VbWfwjtoDC2sGoxQyQPb3hFGfUjNff3OyU?= =?us-ascii?q?Lg95jE/BoKmF4DDRoW1jbyH3Se0AppWZmRcBVCXC3vocIeEVOkRZy2IOMNuiSY?= =?us-ascii?q?LVaK6Ro8lyx6vuw76y7RmLubO5iIYspfj2MBv5+LPjREy6SB0D8OF3m6RVW50m?= =?us-ascii?q?2cISyYy3KB+ukx91kyO0bN4gvxdDdxc/elFUgY8NZ7Gzux1Ecr+WgzbfoTBdFH?= =?us-ascii?q?zCN6vBDV0StMq3/cPZVx8EpOslFqLiyGjBrtQk72QGLQ19Ljd1j7/PZA5g1/c0?= =?us-ascii?q?qA8gxEKT89IP2CigqM3owHJAYnFnkGxmKOjdKBa1ynIojSt122L6WdZWwl02L7?= =?us-ascii?q?yenISakLhh1jjrhfETrSpDb08dAxDxMKLbKFDcPXtgEVHSvalM9PbNTHi01ysD?= =?us-ascii?q?AqFk+vfJLHhfH8QiWCEUBBse+E700yvbVF7Ph375mXUAXppCE7lZF7q/a9msnS?= =?us-ascii?q?nQ0QozgaMKUp8y76y/R1TjvuZGap7Nl0svCoxqjt1Wl262oCPYzJljw5sbKRSY?= =?us-ascii?q?JU251IVjQrk?= IronPort-Data: =?us-ascii?q?A9a23=3AlZcduKOJuglg02TvrR2clsFynXyQoLVcMsFnjC/?= =?us-ascii?q?WdQjt1Twj0WBTyzQYW2mCaa3YY2Gnc9hyYNnn8k0EscKGv4NqS1BcGVNFHysb8?= =?us-ascii?q?5KdbTi6Bh6tZH3KdpWroHqKXqzyU/GYRCwPZiKa9kfF3oTJ9yEmjPjSHOukU4Y?= =?us-ascii?q?oBwgoLeNaYHd54f5cs7Vh6mJYqYDR7zKl4bsekeWHULOW82Ic3lYv1k62gEgHU?= =?us-ascii?q?MIeF98vlgdWifhj5DcynpSOZX4VDfnZw3DQGuG4EgMmLtsvwo1V/kuBl/ssIv2?= =?us-ascii?q?fu+6iN3UwGPvVNwXIjWdKUa+/hBQEvjY1zqswKPsbbwFQlimNmNdyjt5KsPRcS?= =?us-ascii?q?y91ZuuVwLtbCkMeSnguVUFF0OevzXyXt82YyEnPaD3rwfhiBQc8NJcw/utnAG9?= =?us-ascii?q?Ps/cfLVjhazja3bvonu3mIgVrrp96d5K0VG8FgVlrxDTdSPInWozrWLTP/dYe3?= =?us-ascii?q?TEqh8kIE+y2WiazQS43OU+GPgkWbw9RUIZkyb/u3CShLSkD/QrT+L5otkHN6Cd?= =?us-ascii?q?09pTtFPvcXOCQY/tUu1LB/jeeuzztav0BHNmWyD7A/3W0jODVxHmjAdtCUrql6?= =?us-ascii?q?vRtnVufgHQJDwEbXke6pv//jVOiX9VYKAof/S9GkET7z2TzJvGVYvFyiCfsUt8?= =?us-ascii?q?gt9ts/ykSxjukkvOR2zzDQ28OQ3hGdcAss9IwSXoyzFiVktj1BDtp9rqIVXaa8?= =?us-ascii?q?bTSpjS3UcTQBXFXfjcKFGPp/PG6yLzfTDqWJjqgLEJxptn4CTD+wnaBqy1Wa3A?= =?us-ascii?q?7k5sQz6vilbzYq2vEm3UKJzLZIi3TU3Kk4AI/b4mgD2BtwTA38t4YRLukopK9U?= =?us-ascii?q?LToViRQAC3izX1AqcBVfNgwIQ=3D=3D?= IronPort-HdrOrdr: =?us-ascii?q?A9a23=3AtM8ETawVuXBnqix6hKPuKrPwLr1zdoMgy1kn?= =?us-ascii?q?xilNoH1uA6ulfqWV9sjzuiWetN98YhwdcLO7Sc29qBHnhPtICOAqVN+ftW/d1F?= =?us-ascii?q?dAR7sM0WKN+VPd8mHFl9K1rZ0QEJSWc+eAb2ST3a7BgDWFLw=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0BeCwCin8xhh3YMayhagQmBW4EfATBVf?= =?us-ascii?q?1gnEjGIDgOFOYUOgRCBcgOLCoIIjzoTgREDVAgDAQMBCwIxEAQBAYUGAoM7HwY?= =?us-ascii?q?BBDYEDQECBBUBAQUBAQECAQMDBAETAQEBAQsNDgg0IoVoDYI1KQGDYwEBAQECA?= =?us-ascii?q?RIuAQErDQQLAgEIRiERJQIEARIIGoJcAYIOUgUDDiICoWABgToCiU4FFzV4gTO?= =?us-ascii?q?BAYIIAQEGBASFCw0LgjYDBjgBgQKDDYJ+VEqDAIQIgSuBJYFYgmc+giGBZQoBE?= =?us-ascii?q?gEjK4Migi6REigQgRFOC4EQkgOOZYt+kWlrB4NFgzyGHIEajluGFRWDcIZdjAO?= =?us-ascii?q?RF5Y2IIxgg0uQUSCEawIEAgQFAg4BAQaBew58cHBQgmlRGQ+OOYNZhRSFSkIyO?= =?us-ascii?q?AIGAQoBAQMJkSMBAQ?= X-IPAS-Result: =?us-ascii?q?A0BeCwCin8xhh3YMayhagQmBW4EfATBVf1gnEjGIDgOFOYU?= =?us-ascii?q?OgRCBcgOLCoIIjzoTgREDVAgDAQMBCwIxEAQBAYUGAoM7HwYBBDYEDQECBBUBA?= =?us-ascii?q?QUBAQECAQMDBAETAQEBAQsNDgg0IoVoDYI1KQGDYwEBAQECARIuAQErDQQLAgE?= =?us-ascii?q?IRiERJQIEARIIGoJcAYIOUgUDDiICoWABgToCiU4FFzV4gTOBAYIIAQEGBASFC?= =?us-ascii?q?w0LgjYDBjgBgQKDDYJ+VEqDAIQIgSuBJYFYgmc+giGBZQoBEgEjK4Migi6REig?= =?us-ascii?q?QgRFOC4EQkgOOZYt+kWlrB4NFgzyGHIEajluGFRWDcIZdjAORF5Y2IIxgg0uQU?= =?us-ascii?q?SCEawIEAgQFAg4BAQaBew58cHBQgmlRGQ+OOYNZhRSFSkIyOAIGAQoBAQMJkSM?= =?us-ascii?q?BAQ?= X-IronPort-AV: E=Sophos;i="5.88,246,1635199200"; d="scan'208,217";a="1216675" X-MGA-submission: =?us-ascii?q?MDETAGL8n6KmGP+eN8rYsYrcrSb568iXHiGmkt?= =?us-ascii?q?as4U+hxRVxDIDLG3dGsRvCfMPrFH6Sl5WXdE3aFVfHbwLXF5tUjPI9wK?= =?us-ascii?q?ScoiDfvjS7RJ/ZBU0kePNyXhPA2kmelNbM2Ta46xN/ZvcseuMABbGYcX?= =?us-ascii?q?XsvkxBu9WObevQNWiZb//ptg=3D=3D?= Received: from mail-eopbgr120118.outbound.protection.outlook.com (HELO FRA01-PR2-obe.outbound.protection.outlook.com) ([40.107.12.118]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/AES256-GCM-SHA384; 29 Dec 2021 18:52:05 +0100 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=M8qhB+DtJdlXXWEuOR9cIimiEf/cr2Rlyoom4SD0ZWI1fbyD1pZvxAkoQhhXVcIHfqU+ivFypYSuzRScJUi2DdN4qn61qcafTwbrCSUmzgoZKR6sNLqB/6tMPlrHrHqLWW3erM2hIwZc7rq87/Hs+OtTytIIHEMX0NcxZy6LDo9bQzGzVXhCdqHEC84xrt81LkmJZ0NUSYnB/24KyPy2hw26JrcayofYlsXKW/srEGTvYcquvNSrATRLPmsZgP2sNqfPWJPJdR4ip23JRRh52j0glwWzcoTLzukEmRzmxjDBLSwkv8VGZW7CFWUsdHgmgRDW0im6yRGcDvm5JXQT9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=+jW87Ekdb0EpDenFEi/3+jrTfXYXfrWMAa6CVfhVgnY=; b=gIgokZ9KNQlzyGT39/dV0Csn8Ta5pSBe51lTJVU+kExx/oPqKLxl7nLoj57tKVtq+BOEJCUk8xKDjDZtKZAfWH3DmzKjfAM/75NyvJV+JyfRv4k6WjRGOCXCWsnrcD4kBR6PkVX7lP4M3Se7G2jNV+Af3+lauVXdi59MVTcmlAEj1kxK+FIbNEs0g6uMGv+Ot4hYxTsknH6QwUa8z+FVJ6OoGbSm2JIaANexZHVub7i0Au3596282wRFKaacEXWJ2aAVo/83z4TaKrUVoqav8NHZFkNCq4lNEQxTQVp868GHQgaNPqA4p7OOJoTcZ94xBU01QaEnkf7CZRbux0C6cg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=lexifi.com; dmarc=pass action=none header.from=lexifi.com; dkim=pass header.d=lexifi.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lexifi1.onmicrosoft.com; s=selector2-lexifi1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+jW87Ekdb0EpDenFEi/3+jrTfXYXfrWMAa6CVfhVgnY=; b=glgC28hUkJxQrkfR/8ZUd1QDHCVp27gCdWjJNFDD6BogqNd2zim0J02oXrJ+tUg24j1Je6j/d5DisxRj5tvGn/7hs1MhUTrd/RmCz7Ab+AaFIzEseK8dvqxET04bJNsNLNkuQs2XDq+0Up3MXWogRAabxGymq+6EvQ4W0Yneedg= Received: from PAZP264MB2848.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:1f7::19) by PAZP264MB2349.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:1e4::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4823.19; Wed, 29 Dec 2021 17:52:03 +0000 Received: from PAZP264MB2848.FRAP264.PROD.OUTLOOK.COM ([fe80::f861:a31b:3802:848a]) by PAZP264MB2848.FRAP264.PROD.OUTLOOK.COM ([fe80::f861:a31b:3802:848a%5]) with mapi id 15.20.4823.024; Wed, 29 Dec 2021 17:52:03 +0000 From: =?iso-8859-1?Q?Nicol=E1s_Ojeda_B=E4r?= To: "caml-list@inria.fr" , Arnaud Delobelle Thread-Topic: [Caml-list] Learning ocaml Thread-Index: AQHX/M5yGzSvSnLEc06QmPe0Qzq4oKxJvkH/ Date: Wed, 29 Dec 2021 17:52:03 +0000 Message-ID: References: In-Reply-To: Accept-Language: fr-FR, en-US Content-Language: fr-FR X-MS-Has-Attach: X-MS-TNEF-Correlator: suggested_attachment_session_id: c67ee789-4d9b-50dc-2170-cf3110aa4654 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 06b4122e-ccc4-4745-04c5-08d9caf3ebe4 x-ms-traffictypediagnostic: PAZP264MB2349:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 6CMg2SGyzaq2Ky3qQ0m/JyYrK8HtRm7ZrQ+pl8KbAmvdyJO7oPQ5UtdXJukK3RKoBNmA7QX9ZClGASBtFLdo5rSBIFOpIVQch3jkV2HmsqcGFgVTbU+yn0ULldmquyrcUFc7BSSSu7bQ6nL016hTNxREe5ynDUOJKaXBKLSTKkhetaPaq7Q2+u+ri7ftw1nTmeQYoQL7ouMGEthNIl5bhM2ENJsUqgnPFb5jpBI6hLxUaqjnk18JOh7YAaCGDeWehxqrWFkrgt/mtQk12wCUOw8pdmkIyDMMLAZGBDZNjnBP7AH7McTBBg6GG8gj4RvJIZDPphTT2nPoOlXck1LNOtGDcdVb6z+Xlioq6j6U4NDJUEPPkusT8tTehO/2ci76dCShTmROXWBgcVw2TOHn0f6U0QHdlCx4HU8pdxmoXGeNhkk1R4leKl6uNgibla515pt0efXGNn4XN3NbXoMjSz4mA6Sl8A6vKl+ANFCejjLs3QI1mb3kGclVGrfvxyv5cZ4QMbxvp3WYK7ROcT2tEI+zAlrvT6l/TB8DIwpc4DWYX3knwNUXywVGxG3gCMGJ12c6quCNtUs70qp63pHy3/Gcb+REzlZUaR95ZMlrIGBsgunoO856qFmERtFispS4jGOCPkzmNweUkp27E+zt/lKsAcpDwuTqRL2xMsnms0BLys58iV0GHspGwcsHRx/xW1sdnXA03O1umHH9gHqpQMJ5fdCk+DqRQ+zbXK1HXn7BVJCyekJUpXTLIwAIHspwEqTjk2cGfW8+4ARUsbM5lAO9NpKxP+w83SDx7wjPVNnk8D9Os5qgKl2uPPSU2Oiv6c1+scyr9uK7UEMuMIYX4A== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAZP264MB2848.FRAP264.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(396003)(136003)(39830400003)(366004)(376002)(346002)(83380400001)(38100700002)(2906002)(66574015)(316002)(166002)(9686003)(55016003)(122000001)(6506007)(7696005)(508600001)(966005)(38070700005)(71200400001)(8936002)(5660300002)(110136005)(26005)(8676002)(66476007)(66946007)(66556008)(66446008)(64756008)(52536014)(86362001)(76116006)(91956017)(33656002)(19627405001)(186003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?F4GNZAZpmxm/bocHR6ykFWj9FULsAuLE4ItVWKrLjtSGV5bbkW4APzfzUJ?= =?iso-8859-1?Q?91T6PzN9AcFuIIwG87YE1PZ7vwUfdQ+x4N7XP/XCrM9XVcyP0NlCXH8qV3?= =?iso-8859-1?Q?kGft8t0w5CIIqVo6iMTDU3DR8tBKCw0Xmxc2pRV2Dfk8M3a8DLdaSAiHnX?= =?iso-8859-1?Q?I35rElzFiVwiGLEXTOpsJhlWKwaTWcA1HhJqToAwoe+Ai4jdpGCookgt/H?= =?iso-8859-1?Q?Kfq4gnBxMZA/hd0J4MG9XMDK/ybsTFkDpoGxzrSdiman6qwYSg/p2YV19I?= =?iso-8859-1?Q?LulHiJRxxyhhb/tJLVvdSs/Tcd91+eTHfTsXf6oVusuw5o4mYuNoNPnfIY?= =?iso-8859-1?Q?VzfuC5+tomZOqbMY7SW9S7rmYS7lJaVl6BWkPsvu8j8gLQA8GTsMMqZsiE?= =?iso-8859-1?Q?f0criDUz7+yng+QKpL3rkIof/2Wm+Xx5gAq+qwywesLVZ+UqX9D5QqLPa2?= =?iso-8859-1?Q?PfbR5nXO761rTnaXCf9V58wArt1ZQxdJQ6QpXR83W6vKPgECY9epPObeDn?= =?iso-8859-1?Q?3lh/uoaxfq53OVplC5u6jRx/qKFcwmYr1makT5leuiWsO5P97nTCZMQILC?= =?iso-8859-1?Q?JUTkykxFlR6kTefX4Md5P06sRBpp/bXWrb7cX4dT3Be2aUVe3GbW9HDnHp?= =?iso-8859-1?Q?BJmG6FWPWVAQa71KQCfmi17rwdxUPDu5VjW/odY1rovwJcDOOkiPxwqVfq?= =?iso-8859-1?Q?CsQXqB+SzHwmfT+UwiMIqovj3RmUQpIAIds/aDE8hgNpZlMClK34xLhMjU?= =?iso-8859-1?Q?qL6Zn7sGE2ND/iBji9AghEo1uxf8sPT9hVgITPOgUIqp5KDR2aPRzAw1Il?= =?iso-8859-1?Q?HDe/koZoypEPWSLXL0l0tkvaKOihRmjs1mxuZRHakFjpXd+bFXEXMpA9jZ?= =?iso-8859-1?Q?rSr8GVD07n9EvWZJ74bw2aus181OLcj27zmGagXeSY7gfSK3A5ULe02+XA?= =?iso-8859-1?Q?WdWKGETaVYQ+wx3KuIX7o/y1jqHMGCwrjGHn9aK9qWZ4oS0uOODuhs9E9R?= =?iso-8859-1?Q?j6M+pZLN0/oiFgb/EvtC3dmWRfVqOOUkm1kunkxvEQao3cCi3S6jH7e8JT?= =?iso-8859-1?Q?sTZuYZaeEZlvPiDBYf1xv/e8Ho278EAM9EsaSz7URrelJq1Yrhp7vYJo4U?= =?iso-8859-1?Q?bKz2OO0/NReAO/6LxumFyz7pRetm6FfUIkBDTa/P86jUdEmrnEY+885onK?= =?iso-8859-1?Q?hjNoE4L/5nsvW7rk5s94fU9Xf2eKUtcYqP15O/lqc3twtNDeH53bg0PKxv?= =?iso-8859-1?Q?xkTjdf9fP36XFjyMVy9rBnu6VBaqd108nTTLKSsShwXLO9wQeF/w9HPDJR?= =?iso-8859-1?Q?gJBvAX0mt66cg1n6T5sy47Ks4CA129I7yHCgYpNtmoGQAP8drDjt3hybHT?= =?iso-8859-1?Q?hpCBiY183S42Nn1EoTS1kpY1/Vi1Bn5t5XnoOfV6P4Mu2tVA+vERDLBBrF?= =?iso-8859-1?Q?XNviVFGOzfrvs2f8+f/HewQGjklwXTB5oLIzzf1ZT8drcwff6Oy6+qd9tP?= =?iso-8859-1?Q?KLYOA0T3rPprBBALRkHhUBilzUmw1bohl892ZUBau4cXIgVTBBIHUigPNA?= =?iso-8859-1?Q?cr0J7jGbr+Kb3Vosmnw+5mVXFy3u0BMoLjP2z0oM4l2ys4BtXgV7Yts2d6?= =?iso-8859-1?Q?p0fRPO9OzcX/dmawQD1x1uPqM7ibZ+/ocIYE2kvUyZNxrLnVREgpXWW9JO?= =?iso-8859-1?Q?QwJm/GQDngE6UyCLKb4W9LLbHTK0dM5TmJe29peStLrsekKz4/sbqHt9JR?= =?iso-8859-1?Q?vOQg=3D=3D?= Content-Type: multipart/alternative; boundary="_000_PAZP264MB2848ED1EE3BD573F978582B7C3449PAZP264MB2848FRAP_" MIME-Version: 1.0 X-OriginatorOrg: lexifi.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PAZP264MB2848.FRAP264.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 06b4122e-ccc4-4745-04c5-08d9caf3ebe4 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Dec 2021 17:52:03.1435 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 9c9628ec-e5c3-4aa7-afa1-e7bf99470874 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: e69ZPwS3z2s3TneXg32H8YQA6ORoMiN8a/7tTJa3Ow0XS1lXrAO6rfxgRIJAS+6FuwBqzPn1SjeECtsuindDSyUUZ2w8jeXX28yiNoOYKBo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAZP264MB2349 Subject: RE: [Caml-list] Learning ocaml Reply-To: =?iso-8859-1?Q?Nicol=E1s_Ojeda_B=E4r?= X-Loop: caml-list@inria.fr X-Sequence: 18634 Errors-To: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Archived-At: --_000_PAZP264MB2848ED1EE3BD573F978582B7C3449PAZP264MB2848FRAP_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello Arnaud, > Do you have any good suggestions? I think the consensus is that one should write pure code by default, and on= ly switch to imperative style when there is a good reason for it (eg an alg= orithm or data structure that is harder to express in pure style). Pure cod= e is easier to read and reason about in most cases. > What would be an appropriate way for me to request feedback? I would recommend you head over to https://discuss.ocaml.org/ to get feedba= ck to all your OCaml-related questions. Cheers, Nicolas ________________________________ De : caml-list-request@inria.fr de la part de = Arnaud Delobelle Envoy=E9 : mercredi 29 d=E9cembre 2021 17:09 =C0 : caml-list@inria.fr Objet : [Caml-list] Learning ocaml CAUTION: This email originated from outside of the organization. Do not cli= ck links or open attachments unless you recognize the sender and know the c= ontent is safe. Hello! In 1993 while doing a maths degree at Paris 7 university I remember doing a= project in a language called Caml-Light (implementing a unification algori= thm iirc). I haven't done any Caml since but this Christmas I decided to g= ive Ocaml a go (just for the fun of it). As I'm learning I am wondering how to write idiomatic OCaml - as an example= , as it has both functional and imperative syntax, I'm finding it hard to d= ecide what is most natural in some situations. Do you have any good sugges= tions? My favourite way to learn is by doing and getting feedback. What would be = an appropriate way for me to request feedback? It would be for fairly simp= le code. TIA Arnaud Delobelle --_000_PAZP264MB2848ED1EE3BD573F978582B7C3449PAZP264MB2848FRAP_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hello Arnaud,

Do you have any good suggestions?

I think the consensus is that one should write pure code by default, and on= ly switch to imperative style when there is a good reason for it (eg an alg= orithm or data structure that is harder to express in pure style). Pure cod= e is easier to read and reason about in most cases.

What would be an appropriate way for me to request feedback?
https://discuss.ocaml.org/ to get feedback to all your OCaml-re= lated questions.

De : caml-list-request@inri= a.fr <caml-list-request@inria.fr> de la part de Arnaud Delobelle <= arnodel@gmail.com>
Envoy=E9 : mercredi 29 d=E9cembre 2021 17:09
=C0 : caml-list@inria.fr <caml-list@inria.fr>
Objet : [Caml-list] Learning ocaml
 

CAUTION: This email = originated from outside of the organization. Do not click links or open att= achments unless you recognize the sender and know the content is safe.

Hello!

In 1993 while doing a maths degree at Paris 7 university = I remember doing a project in a language called Caml-Light (implementing a = unification algorithm iirc).  I haven't done any Caml since but this C= hristmas I decided to give Ocaml a go (just for the fun of it).

As I'm learning I am wondering how to write idiomatic OCaml - as an ex= ample, as it has both functional and imperative syntax, I'm finding it hard= to decide what is most natural in some situations.  Do you have any g= ood suggestions?

My favourite way to learn is by doing and getting feedback.  What= would be an appropriate way for me to request feedback?  It would be = for fairly simple code.

TIA

Arnaud Delobelle

--_000_PAZP264MB2848ED1EE3BD573F978582B7C3449PAZP264MB2848FRAP_--