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 ESMTP id 161365D5 for ; Tue, 17 Dec 2019 08:52:27 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.69,324,1571695200"; d="asc'?scan'208,217";a="420620356" Received: from sympa.inria.fr ([193.51.193.213]) by mail2-relais-roc.national.inria.fr with ESMTP; 17 Dec 2019 09:52:26 +0100 Received: by sympa.inria.fr (Postfix, from userid 20132) id 180D47F39E; Tue, 17 Dec 2019 09:52:26 +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 9DC5C7F30F for ; Tue, 17 Dec 2019 09:52:12 +0100 (CET) X-IronPort-AV: E=Sophos;i="5.69,324,1571695200"; d="asc'?scan'208,217";a="333418708" Received: from set.irisa.fr (HELO set) ([131.254.10.170]) by mail3-relais-sop.national.inria.fr with ESMTP/TLS/AES256-GCM-SHA384; 17 Dec 2019 09:52:12 +0100 From: Alan Schmitt To: "lwn" , "cwn" , caml-list@inria.fr Date: Tue, 17 Dec 2019 09:52:10 +0100 Message-ID: <87fthjwczp.fsf@polytechnique.org> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="===-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Subject: [Caml-list] Attn: Development Editor, Latest OCaml Weekly News Reply-To: Alan Schmitt X-Loop: caml-list@inria.fr X-Sequence: 17911 Errors-to: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: --===-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: multipart/alternative; boundary="==-=-=" --==-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 SGVsbG8NCg0KSGVyZSBpcyB0aGUgbGF0ZXN0IE9DYW1sIFdlZWtseSBOZXdzLCBmb3IgdGhlIHdl ZWsgb2YgRGVjZW1iZXIgMTAgdG8gMTcsDQoyMDE5Lg0KDQpUYWJsZSBvZiBDb250ZW50cw0K4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSADQoNCklzIHRo ZXJlIGEgZ29vZCB3YXkgdG8gZW5jb2RlIGxpbmVhciB0eXBlcyBpbiBPQ2FtbD8NCkFyY2ggTGlu dXggaW5zdGFsbGVyIHdyaXR0ZW4gaW4gT0NhbWwNCmJhdHRlcmllcyBiYXR0ZXJpZXMuMi4xMS4w DQpPbGQgQ1dODQoNCg0KSXMgdGhlcmUgYSBnb29kIHdheSB0byBlbmNvZGUgbGluZWFyIHR5cGVz IGluIE9DYW1sPw0K4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ 4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ 4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQDQoN CiAgQXJjaGl2ZToNCiAgPGh0dHBzOi8vZGlzY3Vzcy5vY2FtbC5vcmcvdC9pcy10aGVyZS1hLWdv b2Qtd2F5LXRvLWVuY29kZS1saW5lYXItdHlwZXMtaW4tb2NhbWwvMTI5Mi83Pg0KDQoNCkNvbnRp bnVpbmcgdGhpcyBvbGQgdGhyZWFkLCBLb25zdGFudGluIE9sa2hvdnNraXkgc2FpZA0K4pSA4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSADQoNCiAgSSd2ZSBzdHVt YmxlZCB1cG9uIGEgbGlicmFyeSB0aGF0IGltcGxlbWVudHMgbGluZWFyIHR5cGVzIGZvciBPQ2Ft bCwNCiAgdXNpbmcgbW9uYWRzLCBsZW5zIGFuZCBzb21lIHBweCB0byBtYWtlIGl0IG1vcmUgbGln aHR3ZWlnaHQuIE1pZ2h0IGJlDQogIG9mIGludGVyZXN0OiA8aHR0cHM6Ly9naXRodWIuY29tL2tl aWdvaS9saW5vY2FtbD4NCg0KDQpBbnRvbiBLb2Noa292IGFkZGVkDQrilIDilIDilIDilIDilIDi lIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIANCg0KICBJdCBpcyB0aGUg cGFydCBvZiBldmVuIG1vcmUgaW50ZXJlc3Rpbmcgc3lzdGVtIC0gW09DYW1sIE1QU1RdDQogIChN dWx0aXBhcnR5IFNlc3Npb24gVHlwZXMpIFNlZSB0aGUgW3NsaWRlc10uDQoNCg0KW09DYW1sIE1Q U1RdIDxodHRwczovL2dpdGh1Yi5jb20va2VpZ29pL29jYW1sLW1wc3Q+DQoNCltzbGlkZXNdDQo8 aHR0cHM6Ly93d3cuc2xpZGVzaGFyZS5uZXQva2VpZ29pL29jYW1sbXBzdC1nbG9iYWwtcHJvdG9j b2wtY29tYmluYXRvcnMtMTc1NTE5MjE0Pg0KDQoNCkd1aWxsYXVtZSBNdW5jaC1NYWNjYWdub25p IHRoZW4gc2FpZA0K4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA 4pSA4pSADQoNCiAgKFRoZSBwYXBlciBsaW5rZWQgb24gdGhhdCBwYWdlIGlzIGRhdGVkIDIwMTEv MjAxNC4gSW4gY2FzZSBhbnlvbmUNCiAgd29uZGVycyB3aGV0aGVyIHRoZSBhdXRob3JzIGhhdmUg Zm91bmQgYSB0aW1lIG1hY2hpbmUgaW4gYSBiYXJuIHRvIGJlDQogIGFibGUgdG8gY2l0ZSBwYXBl cnMgZnJvbSAyMDE4LCB0aGVyZSBqdXN0IHNlZW1zIHRvIGJlIGFuIGVycm9yIGluIHRoZQ0KICBw cmVwYXJhdGlvbi4gSXQgaXMgZnJlc2hseSBwdWJsaXNoZWQsIGFuZCBhIFBERiB3aXRoIGNvcnJl Y3QgZGF0ZXMgaXMNCiAgYXZhaWxhYmxlIFtoZXJlXS4pDQoNCg0KW2hlcmVdDQo8aHR0cHM6Ly93 d3cuanN0YWdlLmpzdC5nby5qcC9hcnRpY2xlL2lwc2pqaXAvMjcvMC8yN180MzEvX2FydGljbGU+ DQoNCg0KQXJjaCBMaW51eCBpbnN0YWxsZXIgd3JpdHRlbiBpbiBPQ2FtbA0K4pWQ4pWQ4pWQ4pWQ 4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ 4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQDQoNCiAgQXJjaGl2ZToN CiAgPGh0dHBzOi8vZGlzY3Vzcy5vY2FtbC5vcmcvdC9hcmNoLWxpbnV4LWluc3RhbGxlci13cml0 dGVuLWluLW9jYW1sLzQzODgvMTI+DQoNCg0KRGFycmVuIGFubm91bmNlZA0K4pSA4pSA4pSA4pSA 4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSADQoNCiAgSSdtIGRvaW5nIGEgc2hv cnQgdXBkYXRlIGhlcmUgYXMgT2FsaSBoYXMgc2VlbiBzb21lIHNpZ25pZmljYW50DQogIGNoYW5n ZXMuIFRoaXMgdXBkYXRlIGlzIGFsc28gdGhlIGxhc3Qgb25lIGhlcmUgdG8gYXZvaWQgYmVpbmcg dG9vDQogIGFubm95aW5nLCBhbmQgYWxzbyBzaW5jZSBJIHdvbid0IGJlIGFkZCB0b28gbXVjaCBu ZXcgc3R1ZmYgdG8gT2FsaSBpbg0KICBmb3Jlc2VlYWJsZSBmdXR1cmUuDQoNCiAgTWFqb3IgY2hh bmdlcyBzaW5jZSBsYXN0IHRpbWUNCiAg4oCiIFNhbHRTdGFjayBmaWxlcyBhbmQgc2NyaXB0IGZp bGVzIChvciBwcm9maWxlcykgbm93IGxpdmUgaW4gYQ0KICAgIHNlcGFyYXRlIFtyZXBvXQ0KICAg IOKAoiBPYWxpIGFjY2VwdHMgY3VzdG9tIHByb2ZpbGUgcmVwbyBVUkwgdG8gZmFjaWxpdGF0ZSB1 c2luZyB5b3VyIG93bg0KICAgICAgU2FsdFN0YWNrIGZpbGVzIHdpdGhvdXQgZm9ya2luZyBPYWxp IGl0c2VsZg0KICDigKIgU2VtaSBzZWxmLWRvY3VtZW50YXRpb24NCiAgICDigKIgQWRkZWQgbWVj aGFuaXNtIHRvIGZhY2lsaXRhdGUgaW5saW5lIGRvY3VtZW50YXRpb24gaW5zaWRlDQogICAgICBg b2FsaS5tbCcgaXRzZWxmDQogICAg4oCiIFRoZSBnZW5lcmF0ZWQgbWFya2Rvd24gZG9jIGlzIHN0 b3JlZCBhcyBbT0FMSV9ET0NdIGluIHJlcG8sIGl0DQogICAgICBsaXN0cyBhbGwgdGhlIHN0ZXBz IChvciB0YXNrcykgT2FsaSBkb2VzLCBhbG9uZyB3aXRoIGRlc2NyaXB0aW9ucw0KICDigKIgQWRk ZWQgTFZNIHN1cHBvcnQNCiAgICDigKIgV29ya3Mgd2l0aCBhbGwgMyBkaXNrIGxheW91dHMsIGFu ZCBlbmNyeXB0aW9uDQogICAg4oCiIFNlZSBbaGVyZV0gZm9yIGRldGFpbHMgb24gYWRkZWQgbG9n aWNhbCB2b2x1bWVzDQogIOKAoiBBbnN3ZXIgcmVtZW1iZXJpbmcgb2YgZGlhbG9ndWVzIHdoZW4g YXBwcm9wcmlhdGUNCiAgICDigKIgUmVsYXRpdmVseSBzdGF0aWMgYW5zd2VycyAoZS5nLiBob3N0 bmFtZSwgd2hldGhlciB0byB1c2UNCiAgICAgIGVuY3J5cHRpb24sIExWTSkgYXJlIHN0b3JlZCBp biBgb2FsaV9hbnN3ZXJzJyBkaXJlY3RvcnksIHdpdGggYQ0KICAgICAgSlNPTiBmaWxlIGZvciBl YWNoIHRhc2sNCiAgICDigKIgVGhlICJhbnN3ZXIgc3RvcmUiIGNhbiBiZSB1c2VkIGluIG5ldyBz ZXNzaW9uIG9mIE9hbGkuIFRoZSBvbGQNCiAgICAgIGFuc3dlciBzdG9yZSBpcyB3aXBlZCBhY2Nv cmRpbmdseSBpZiB1c2VyIGNoYW5nZXMgdGhlaXIgYW5zd2VyLg0KICDigKIgQWRkZWQgU1NIIHNl cnZlciBzZXR1cCBhbmQgcHVibGljIGtleSB0cmFuc2ZlciBjb2RlIChwb3J0ZWQgZnJvbSBvbGQN CiAgICBzZXJ2ZXIgYmFzaCBzY3JpcHQpDQogICAg4oCiIFNlZSBbaGVyZV0gZm9yIGRldGFpbHMN CiAgICDigKIgTWFpbmx5IHVzZWZ1bCBmb3Igd2hlbiB5b3UgaGF2ZSAodmlydHVhbCkgY29uc29s ZSBhY2Nlc3MgdG8gbGl2ZQ0KICAgICAgQ0QvT2FsaSBpbnN0YWxsIHNjcmVlbiwgYW5kIHdhbnQg dG8gYWRkIG5lZWRlZCBwdWJsaWMga2V5IHRvIHRoZQ0KICAgICAgdXNlcidzIGAuc3NoL2F1dGhv cml6ZWRfa2V5cycgdmlhIG5ldHdvcmsgaW5zdGVhZCBvZiBsb2FkaW5nIGZyb20NCiAgICAgIHBo eXNpY2FsIG1lZGl1bQ0KDQogIEkndmUgdXNlZCBPYWxpIHRvIGluc3RhbGwgaW4gdmFyaW91cyBj b25maWd1cmF0aW9ucyBpbiBwYXN0IGNvdXBsZSBvZg0KICBkYXlzLCBhbmQgaGF2ZSB5ZXQgdG8g bm90aWNlIG1ham9yIGRlZmVjdHMuIFRoYXQgYmVpbmcgc2FpZCwgZXhlcmNpc2UNCiAgY2F1dGlv biBhcyB5b3Ugd291bGQgZm9yIGluc3RhbGxpbmcgYW4gT1MuDQoNCg0KW3JlcG9dIDxodHRwczov L2dpdGh1Yi5jb20vZGFycmVubGRsL29hbGktcHJvZmlsZXM+DQoNCltPQUxJX0RPQ10gPGh0dHBz Oi8vZ2l0aHViLmNvbS9kYXJyZW5sZGwvb2FsaS9ibG9iL21hc3Rlci9PQUxJX0RPQy5tZD4NCg0K W2hlcmVdDQo8aHR0cHM6Ly9naXRodWIuY29tL2RhcnJlbmxkbC9vYWxpL2Jsb2IvbWFzdGVyL09B TElfRE9DLm1kIzIwLXNldC11cC1kaXNrPg0KDQpbaGVyZV0NCjxodHRwczovL2dpdGh1Yi5jb20v ZGFycmVubGRsL29hbGkvYmxvYi9tYXN0ZXIvT0FMSV9ET0MubWQjNTQtdHJhbnNmZXItc3NoLXB1 YmxpYy1rZXlzPg0KDQoNCmJhdHRlcmllcyBiYXR0ZXJpZXMuMi4xMS4wDQrilZDilZDilZDilZDi lZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDi lZDilZDilZANCg0KICBBcmNoaXZlOg0KICA8aHR0cHM6Ly9kaXNjdXNzLm9jYW1sLm9yZy90L2Fu bi1iYXR0ZXJpZXMtYmF0dGVyaWVzLTItMTEtMC80ODcxLzE+DQoNCg0KVW5peEp1bmtpZSBhbm5v dW5jZWQNCuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKU gOKUgOKUgOKUgA0KDQogIFRoZSBsYXRlc3QgMi54IHJlbGVhc2Ugb2YgYmF0dGVyaWVzIGlzIGF2 YWlsYWJsZSBpbiBvcGFtLiAgT0NhbWwNCiAgYmF0dGVyaWVzIGluY2x1ZGVkIGlzIGEgY29tbXVu aXR5IG1haW50YWluZWQgZXh0ZW5kZWQgc3RhbmRhcmQNCiAgbGlicmFyeS4NCg0KICA8aHR0cHM6 Ly9naXRodWIuY29tL29jYW1sLWJhdHRlcmllcy10ZWFtL2JhdHRlcmllcy1pbmNsdWRlZD4NCg0K ICBUaGUgQVBJIGRvY3VtZW50YXRpb24gaXMgaG9zdGVkIGhlcmU6DQogIDxodHRwczovL29jYW1s LWJhdHRlcmllcy10ZWFtLmdpdGh1Yi5pby9iYXR0ZXJpZXMtaW5jbHVkZWQvaGRvYzIvPg0KDQog IEhlcmUgaXMgdGhlIGNoYW5nZWxvZzoNCiAg4pSM4pSA4pSA4pSA4pSADQogIOKUgiB2Mi4xMS4w IChtaW5vciByZWxlYXNlKQ0KICDilIIgDQogIOKUgiBUaGlzIG1pbm9yIHJlbGVhc2UgZml4ZXMg YSBmZXcgYnVncyBvciBpbnRlcmZhY2UgbWlzbWF0Y2ggd2l0aCBPQ2FtbCBzdGRsaWIsDQogIOKU giBhbmQgaXMgY29tcGF0aWJsZSB3aXRoIEJFUiBNZXRhT0NhbWwuDQogIOKUgiANCiAg4pSCIFRo aXMgaXMgdGhlIGxhc3QgcGxhbm5lZCByZWxlYXNlIG9mIHRoZSB2MiBzZXJpZXMuDQogIOKUgiBO ZXh0IHBsYW5uZWQgcmVsZWFzZSAodjMuMC4wKSB3aWxsIGludHJvZHVjZSBzb21lIEFQSSBjaGFu Z2VzLg0KICDilIIgDQogIOKUgiBOb3RhYmxlIGNoYW5nZXM6DQogIOKUgiANCiAg4pSCICAgICBB ZGQgVW5peC53aXRoX2xvY2tlZF9maWxlDQogIOKUgiAgICAgIzkwNA0KICDilIIgICAgIChTaW1v biBDcnVhbmVzLCBDZWRyaWMgQ2VsbGllciwgcmV2aWV3IGJ5IEZyYW5jb2lzIEJlcmVuZ2VyKQ0K ICDilIIgDQogIOKUgiAgICAgQnVpbGQgd2l0aCAtc3RyaWN0LXNlcXVlbmNlDQogIOKUgiAgICAg IzkyNw0KICDilIIgICAgIChBcm1hw6tsIEd1w6luZWF1LCByZXZpZXcgYnkgRnJhbmNvaXMgQmVy ZW5nZXIpDQogIOKUgiANCiAg4pSCICAgICBBZGQgTGVnYWN5LlJlc3VsdCBmb3IgT0NhbWwgPj0g NC44LjANCiAg4pSCICAgICAjOTEzDQogIOKUgiAgICAgKENlZHJpYyBDZWxsaWVyLCByZXZpZXcg YnkgRnJhbmNvaXMgQmVyZW5nZXIpDQogIOKUgiANCiAg4pSCICAgICBSZW1vdmUgQmF0T28NCiAg 4pSCICAgICAjOTE1DQogIOKUgiAgICAgKENlZHJpYyBDZWxsaWVyLCByZXZpZXcgYnkgRnJhbmNv aXMgQmVyZW5nZXIpDQogIOKUgiANCiAg4pSCICAgICBBZGQgQmF0RmlsZW5hbWUNCiAg4pSCICAg ICAjOTEwDQogIOKUgiAgICAgKENlZHJpYyBDZWxsaWVyLCByZXZpZXcgYnkgRnJhbmNvaXMgQmVy ZW5nZXIpDQogIOKUgiANCiAg4pSCICAgICBNYWtlIGJhdHRlcmllcyB1c2FibGUgd2l0aCBCRVIg TWV0YU9DYW1sDQogIOKUgiAgICAgIzkwOQ0KICDilIIgICAgIChDZWRyaWMgQ2VsbGllciwgcmV2 aWV3IGJ5IEZyYW5jb2lzIEJlcmVuZ2VyIGFuZCBHYWJyaWVsIFNjaGVyZXIpDQogIOKUgiANCiAg 4pSCICAgICBVbml4LnNsZWVwZiBpcyBwcm92aWRlZCBhY3Jvc3MgYWxsIE9DYW1sIHZlcnNpb25z Ow0KICDilIIgICAgIHByZXZpb3VzbHkgaXQgd2FzIG9ubHkgZm9yIE9DYW1sID49IDQuMDMuMA0K ICDilIIgICAgICM5MzANCiAg4pSCICAgICAoRnJhbmNvaXMgQmVyZW5nZXIsIHJldmlldyBieSBD ZWRyaWMgQ2VsbGllcikNCiAg4pSU4pSA4pSA4pSA4pSADQoNCg0KT2xkIENXTg0K4pWQ4pWQ4pWQ 4pWQ4pWQ4pWQ4pWQDQoNCiAgSWYgeW91IGhhcHBlbiB0byBtaXNzIGEgQ1dOLCB5b3UgY2FuIFtz ZW5kIG1lIGEgbWVzc2FnZV0gYW5kIEknbGwgbWFpbA0KICBpdCB0byB5b3UsIG9yIGdvIHRha2Ug YSBsb29rIGF0IFt0aGUgYXJjaGl2ZV0gb3IgdGhlIFtSU1MgZmVlZCBvZiB0aGUNCiAgYXJjaGl2 ZXNdLg0KDQogIElmIHlvdSBhbHNvIHdpc2ggdG8gcmVjZWl2ZSBpdCBldmVyeSB3ZWVrIGJ5IG1h aWwsIHlvdSBtYXkgc3Vic2NyaWJlDQogIFtvbmxpbmVdLg0KDQogIFtBbGFuIFNjaG1pdHRdDQoN Cg0KW3NlbmQgbWUgYSBtZXNzYWdlXSA8bWFpbHRvOmFsYW4uc2NobWl0dEBwb2x5dGVjaG5pcXVl Lm9yZz4NCg0KW3RoZSBhcmNoaXZlXSA8aHR0cDovL2FsYW4ucGV0aXRlcG9tbWUubmV0L2N3bi8+ DQoNCltSU1MgZmVlZCBvZiB0aGUgYXJjaGl2ZXNdIDxodHRwOi8vYWxhbi5wZXRpdGVwb21tZS5u ZXQvY3duL2N3bi5yc3M+DQoNCltvbmxpbmVdIDxodHRwOi8vbGlzdHMuaWR5bGwub3JnL2xpc3Rp bmZvL2NhbWwtbmV3cy13ZWVrbHkvPg0KDQpbQWxhbiBTY2htaXR0XSA8aHR0cDovL2FsYW4ucGV0 aXRlcG9tbWUubmV0Lz4NCg0K --==-=-= Content-Type: text/html; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable OCaml Weekly News

OCaml Weekly News

Previous Week Up Next Week

Hello

Here is the latest OCaml Weekly News, for the week of December 10 to 17, 20= 19.

Is there a good way to encode linear types in OCaml?

Continuing this old thread, Konstantin Olkhovskiy sai= d

I've stumbled upon a library that implements linear types for OCaml, using = monads, lens and some ppx to make it more lightweight. Might be of interest= : https://github.com/keigoi/= linocaml

Anton Kochkov added

It is the part of even more interesting system - OCaml MPST (Multiparty Session Types) See the slides.

Guillaume Munch-Maccagnoni then said

(The paper linked on that page is dated 2011/2014. In case anyone wonders w= hether the authors have found a time machine in a barn to be able to cite p= apers from 2018, there just seems to be an error in the preparation. It is freshly published, and a PDF with correct d= ates is available here.)

Arch Linux installer written in OCaml

Darren announced

I'm doing a short update here as Oali has seen some significant changes. Th= is update is also the last one here to avoid being too annoying, and also s= ince I won't be add too much new stuff to Oali in foreseeable future.

Major changes since last time

  • SaltStack files and script files (or profiles) now live in a separate <= a href=3D"https://github.com/darrenldl/oali-profiles">repo
    • Oali accepts custom profile repo URL to facilitate using your own SaltS= tack files without forking Oali itself
  • Semi self-documentation
    • Added mechanism to facilitate inline documentation inside oali.ml= itself
    • The generated markdown doc is stored as OALI_DOC in repo, it lists all t= he steps (or tasks) Oali does, along with descriptions
  • Added LVM support
    • Works with all 3 disk layouts, and encryption
    • See here for details on added logical volumes
  • Answer remembering of dialogues when appropriate
    • Relatively static answers (e.g. hostname, whether to use encryption, LV= M) are stored in oali_answers directory, with a JSON file for = each task
    • The "answer store" can be used in new session of Oali. The old answer s= tore is wiped accordingly if user changes their answer.
  • Added SSH server setup and public key transfer code (ported from old se= rver bash script)
    • See here for details
    • Mainly useful for when you have (virtual) console access to live CD/Oal= i install screen, and want to add needed public key to the user's .ss= h/authorized_keys via network instead of loading from physical mediu= m

I've used Oali to install in various configurations in past couple of days,= and have yet to notice major defects. That being said, exercise caution as= you would for installing an OS.

batteries batteries.2.11.0

UnixJunkie announced

The latest 2.x release of batteries is available in opam. OCaml batteries included is a community maintained extended standard librar= y.

http= s://github.com/ocaml-batteries-team/batteries-included

The API documentation is hosted here: https://ocaml-batteries-team.github.io/batteries-included/hdoc2/

Here is the changelog:

v2.11.0 (minor release)

This minor release fixes a few bugs or interface mismatch with OCaml stdlib,
and is compatible with BER MetaOCaml.

This is the last planned release of the v2 series.
Next planned release (v3.0.0) will introduce some API changes.

Notable changes:

    Add Unix.with_locked_file
    #904
    (Simon Cruanes, Cedric Cellier, review by Francois Berenger)

    Build with -strict-sequence
    #927
    (Arma=C3=ABl Gu=C3=A9neau, review by Francois Berenger)

    Add Legacy.Result for OCaml >=3D 4.8.0
    #913
    (Cedric Cellier, review by Francois Berenger)

    Remove BatOo
    #915
    (Cedric Cellier, review by Francois Berenger)

    Add BatFilename
    #910
    (Cedric Cellier, review by Francois Berenger)

    Make batteries usable with BER MetaOCaml
    #909
    (Cedric Cellier, review by Francois Berenger and Gabriel Scherer)

    Unix.sleepf is provided across all OCaml versions;
    previously it was only for OCaml >=3D 4.03.0
    #930
    (Francois Berenger, review by Cedric Cellier)

Old CWN

If you happen to miss a CWN, you can send me a message and I'll mail it to you, or go take a loo= k at the archive or the RSS feed of the archives<= /a>.

If you also wish to receive it every week by mail, you may subscribe online.

--==-=-=-- --=-=-=-- --===-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEE6lXof/BsSVW56ZmGBA0KO07S5ccFAl34lzsACgkQBA0KO07S 5cekYAf+L6G2J/gXXxJz/+8ZL58php7a2DXXAUC17PewMnaz/hPATBxe+JaMy1Xh D7GEuECgLqsIQv6Jm43oNk7ba7O0l2ER1Wy6sIdhR/MnQ+uBJHsgeFSPT0w6x5fQ dmSZtThfEVVAYlx22ckhBzYxvoBkKYtBm9SBxtSIy5JvY4QYfUU72C6O8p4jJWOW JsIbrtgYuCbylprNGuTt5KVs2ABBOgiInZHqx5qfbHl4GsP4MHzjO9qyoILvNvTz WZ/2pPFDljaKbWEbaOrBZ88bIdUrt6wYn9dmamGVsSr+XrhPLhYy/rVBnoNra0e0 lj0EUH5Jop8X9L62bIIxDfpB/Srk1g== =Nn/M -----END PGP SIGNATURE----- --===-=-=--