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 612387F0F9 for ; Mon, 23 Nov 2015 20:02:11 +0100 (CET) IronPort-PHdr: 9a23:OljsmRb9yG+X2rcHQTXt2l//LSx+4OfEezUN459isYplN5qZpcu4bnLW6fgltlLVR4KTs6sC0LqL9f+4EjVZvt6oizMrTt9lb1c9k8IYnggtUoauKHbQC7rUVRE8B9lIT1R//nu2YgB/Ecf6YEDO8DXptWZBUiv2OQc9HOnpAIma153xjLDvvcKLKFwR23KUWvBbElaflU3prM4YgI9veO4a6yDihT92QdlQ3n5iPlmJnhzxtY+a9Z9n9DlM6bp6r5YTGY2zRakzTKRZATI6KCh1oZSz7ViQBTeIs1cGT31exhZSHhDU6x65VZ70tgPosep6niKdOJulY6ozXGGL6btsTlfCgSwHNjhxpGjRlst2hqtQoBOnjw12w4nTJoqSMawtLevmYdoGSD8ZDY5qXCtbD9b5NtNXAg== Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=antonbachin@yahoo.com; spf=Pass smtp.mailfrom=antonbachin@yahoo.com; spf=None smtp.helo=postmaster@nm21.bullet.mail.ne1.yahoo.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of antonbachin@yahoo.com) identity=pra; client-ip=98.138.90.84; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="antonbachin@yahoo.com"; x-sender="antonbachin@yahoo.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of antonbachin@yahoo.com designates 98.138.90.84 as permitted sender) identity=mailfrom; client-ip=98.138.90.84; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="antonbachin@yahoo.com"; x-sender="antonbachin@yahoo.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@nm21.bullet.mail.ne1.yahoo.com) identity=helo; client-ip=98.138.90.84; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="antonbachin@yahoo.com"; x-sender="postmaster@nm21.bullet.mail.ne1.yahoo.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0CLAABOYlNWnFRaimJegi6BYG8QglesWIU4iA2CKIFlIYVuAoFJORMBAQEBAQEBARABAQEBAQYNCQkhLoItgggBAQMBDBcEGQE4AQQLBgMCGgImAgJFEgaIKwEDCggNkVadNYFqgnmFagEjJwOEdwEBAQEBAQQBAQEBAQEBAQEUBgwCAXKFU4IQgm6EWYMcL4EVBY4UiDyFJIgNFIIQhnkgkw4jA4JBIx2BX1MBhSoBAQE X-IPAS-Result: A0CLAABOYlNWnFRaimJegi6BYG8QglesWIU4iA2CKIFlIYVuAoFJORMBAQEBAQEBARABAQEBAQYNCQkhLoItgggBAQMBDBcEGQE4AQQLBgMCGgImAgJFEgaIKwEDCggNkVadNYFqgnmFagEjJwOEdwEBAQEBAQQBAQEBAQEBAQEUBgwCAXKFU4IQgm6EWYMcL4EVBY4UiDyFJIgNFIIQhnkgkw4jA4JBIx2BX1MBhSoBAQE X-IronPort-AV: E=Sophos;i="5.20,338,1444687200"; d="scan'208";a="188773181" Received: from nm21.bullet.mail.ne1.yahoo.com ([98.138.90.84]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 23 Nov 2015 20:02:10 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1448305328; bh=r1wzqs3URgEyCc1ys7fRGRIQeBFktDne6xG/Q05uASE=; h=Subject:From:In-Reply-To:Date:Cc:References:To:From:Subject; b=JpIGP7bjodN+axV9rD/tDtH3beS2b1212X3QxYt63phFegWzuxcHnXd6FkoCKzenZGd4OwunzX2FJtC+f9bBaTyPJcY0p8YhgpAGOFAITSNqPavU4UWhqkLI9Y/SZoCUHKux5nkoQaN4RDCJ2uti+Tlh2GeKKCANgphxW+qKE1WCjy9zgm0ZpuDltxcU/6yW3v+/4gtnGNEJ36gYxozUCJbjHgJH3E9yS77Qs2WBkX+VAj00jo/FvRC6+OqNaNfyh7RIKXyIQrLK9W3L+2XbOEJd8o3SaieX242wCU+E8EBTYRX9k/F61ehdx9iNR5OnkudKgbyafZRSETonnnoguA== Received: from [98.138.101.132] by nm21.bullet.mail.ne1.yahoo.com with NNFMP; 23 Nov 2015 19:02:08 -0000 Received: from [98.138.226.58] by tm20.bullet.mail.ne1.yahoo.com with NNFMP; 23 Nov 2015 19:02:08 -0000 Received: from [127.0.0.1] by smtp209.mail.ne1.yahoo.com with NNFMP; 23 Nov 2015 19:02:08 -0000 X-Yahoo-Newman-Id: 453468.24345.bm@smtp209.mail.ne1.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: PD6IzHwVM1kQUejnfiygZ7TlJgHbF1dVfuYDc_3tNOSZBmo 0X8U.kpvPgdg5M.4LTSvtNEg.7lUO1K8K2DSZTWSfIOcZ4Q65TcxpSymbEHo WYv4LIxofhYYVzeiSIn2SWtTM4l.s5.F_5E0.ErV3q1MnwwGdMw4tkFWYYkw m2EofkBmKoZmgNCvEk0W45kVsghhebxyngmdbDIO7HrV1D6rFXxSMXmWU1Mp Y7Y7jWS19Sul0l5USYhNFFYls_imqi3WzV2VF2oMAkdR780cDcizOUP5wiv1 3picfmC5lqsRdk.EILAhonfIdh26utJmi.7djTYZnC_UKAU9b4XjO67yD7dw 9U7B83Pfkn3wZv8f2fQ_kMR7nRVyDlD85O7F_RkNg6YReVdgw8OKdTtHNR41 PL6dv_GyRxCsGOuJBp0rm.4cW4Npa.gJ5vAY9hYdyhj2Gsw1UxWfJcUbajm2 T2w4QhfqJKujj31J9OqPOSfl5KKq2.xjO0HVIg5_r8d_UjbnJrRYXmdPZwmi Wf0WD7vC3u04L394M68NKCpN7YNoK4UKnd15640CkhIeTAuDBSrhtOcqqoQT sfKgRWZIS_C8Ywtzecmt8AhJONxfY6iXWZ_0- X-Yahoo-SMTP: ddtAESaswBBsjSthz_dVP91gr2NDfymF Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2070.6\)) From: Anton Bachin In-Reply-To: <565358DE.6050508@zoho.com> Date: Mon, 23 Nov 2015 13:02:07 -0600 Cc: =?utf-8?Q?Fran=C3=A7ois_Bobot?= , caml-list@inria.fr X-Mao-Original-Outgoing-Id: 469998127.673873-6fed5bea2c77f11e94f41d8846231afd Content-Transfer-Encoding: quoted-printable Message-Id: <7ADE37A1-D6C9-4639-A4DF-1D02F4800252@yahoo.com> References: <4824377F-4045-4D47-9BAB-E06B0C939988@yahoo.com> <564AF405.10400@cea.fr> <1A569326-8749-4332-A88C-719165728F20@yahoo.com> <5652EDFC.5070105@cea.fr> <98E819C0-76A2-4038-A5E6-DFBDC08DF7FA@yahoo.com> <565349F9.6020405@zoho.com> <5D7BF541-7E63-4A21-842A-8C34F36B550B@yahoo.com> <565358DE.6050508@zoho.com> To: Drup X-Mailer: Apple Mail (2.2070.6) Subject: Re: [Caml-list] [ANN] Lambda Soup - HTML scraping and rewriting with CSS selectors > It's also nominal, so you can't say `coerce ~to:"a=E2=80=9D` That=E2=80=99s fine, I=E2=80=99m not proposing something like that, in part= because I don=E2=80=99t think it is even possible to have a type coercion with such u= sage in OCaml. Maybe it is with some GADT abuse, if =E2=80=9Ca=E2=80=9D was a co= nstructor, but it=E2=80=99s still not what I meant. I was just thinking of a set of functi= ons coerce_blah : any_node -> blah_node option for some more or less verbose actual types any_node and blah_node. For comparison, see Dom_html.CoerceTo from js_of_ocaml [1]. then you can do root $$ select =E2=80=9Cdiv > whatever" |> filter_map coerce_whatever |> iter (fun typed_whatever_node -> ...) Anyway, I will study tyxml in some detail. I am working on something else right now, so it will probably be in a few weeks. Thanks, Anton [1]: http://ocsigen.org/js_of_ocaml/2.6/api/Dom_html.CoerceTo=