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 sympa.inria.fr (Postfix) with ESMTPS id 909DB80092; Fri, 2 Dec 2016 19:19:09 +0100 (CET) Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=alain.frisch@lexifi.com; spf=None smtp.mailfrom=alain.frisch@lexifi.com; spf=None smtp.helo=postmaster@vrout30.yaziba.net Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of alain.frisch@lexifi.com) identity=pra; client-ip=185.56.204.35; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="alain.frisch@lexifi.com"; x-sender="alain.frisch@lexifi.com"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of alain.frisch@lexifi.com) identity=mailfrom; client-ip=185.56.204.35; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="alain.frisch@lexifi.com"; x-sender="alain.frisch@lexifi.com"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@vrout30.yaziba.net) identity=helo; client-ip=185.56.204.35; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="alain.frisch@lexifi.com"; x-sender="postmaster@vrout30.yaziba.net"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3AuFLEoBBshFAXLWRDkz3AUyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSP/6rsbcNUDSrc9gkEXOFd2CrakV0KyK6Ou9AyRAuc/H6y9SNsQUFlcsso?= =?us-ascii?q?Y/oU8JOIa9E0r1LfrnPWQRPf9pcxtbxUy9KlVfA83kZlff8TWY5D8WHQjjZ0Iu?= =?us-ascii?q?frymUqabtcm81viz9pvPeE0IwWPlOfIhZCmx+DvQsMIbh5cqAK81wweB9mVJfe?= =?us-ascii?q?9bw38uL1uXlgrU+M204Nhk6SsG/7of9shLXKPmN44xSbVERGA4MmY+6cv38xPK?= =?us-ascii?q?SQKTznwXSWQZnxwOBBLKulWyWZzqsyT3sMJ83jObNIv4V/R8fh+r6qMjbRbpjC?= =?us-ascii?q?YBOHYd8XrLwph7hadf5RagvABXwojOYYjTOuAoLY3HetZPbG5IX8AZeTZAGYi8?= =?us-ascii?q?J98GC+MAO6BWtYjmrFsmqRauBAetQujoz2kb1TfNwaQm3rF5Qkn91ws6EodL6S?= =?us-ascii?q?yMoQ=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0BGAACtukFYmCPMOLlcHAEBBAEBCgEBF?= =?us-ascii?q?wEBBAEBCgEBgw0BAQEBAaZQDpZ0hiICgl0RAQEBAQEBAQEBAQESAQEBAQEICws?= =?us-ascii?q?HHTCCMwQBFQEEghcBBSMVUQsYAgImAgJXBgEMCAEBiG8BrCyCKYsvAQoBAQEjg?= =?us-ascii?q?QuFM4F9gl6HTYJdAQSaY4F4jxyBcogbhiyHX4I/g2KECwI1gRmEDoFpiCCBTwE?= =?us-ascii?q?BAQ?= X-IPAS-Result: =?us-ascii?q?A0BGAACtukFYmCPMOLlcHAEBBAEBCgEBFwEBBAEBCgEBgw0?= =?us-ascii?q?BAQEBAaZQDpZ0hiICgl0RAQEBAQEBAQEBAQESAQEBAQEICwsHHTCCMwQBFQEEg?= =?us-ascii?q?hcBBSMVUQsYAgImAgJXBgEMCAEBiG8BrCyCKYsvAQoBAQEjgQuFM4F9gl6HTYJ?= =?us-ascii?q?dAQSaY4F4jxyBcogbhiyHX4I/g2KECwI1gRmEDoFpiCCBTwEBAQ?= X-IronPort-AV: E=Sophos;i="5.33,287,1477954800"; d="scan'208";a="247864682" Received: from vrout30-bl.yaziba.net (HELO vrout30.yaziba.net) ([185.56.204.35]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-SHA; 02 Dec 2016 19:18:43 +0100 Received: from mtaout20.int.yaziba.net (mtaout20.int.yaziba.net [10.4.20.37]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by vrout30.yaziba.net (mx10.yaziba.net) with ESMTPS id D0AC651FB1; Fri, 2 Dec 2016 19:18:42 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by mtaout20.int.yaziba.net (Postfix) with ESMTP id D125016040F; Fri, 2 Dec 2016 19:18:42 +0100 (CET) X-Virus-Scanned: amavisd-new at mtaout20.int.yaziba.net Received: from mtaout20.int.yaziba.net ([127.0.0.1]) by localhost (mtaout20.int.yaziba.net [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id Ip-Y6QZHrorx; Fri, 2 Dec 2016 19:18:42 +0100 (CET) Received: from [10.0.210.88] (unknown [185.23.92.144]) by mtaout20.int.yaziba.net (Postfix) with ESMTPSA id ACBD91602AF; Fri, 2 Dec 2016 19:18:42 +0100 (CET) To: Vincent Balat , Vincent Balat , ocsigen@inria.fr, OCaml Mailing List References: <96757896-e79c-f940-fc3a-090fc1419df2@lexifi.com> <4b5b6340-0cdd-abc1-b6dc-b97e3d6b9cdf@lexifi.com> From: Alain Frisch Message-ID: Date: Fri, 2 Dec 2016 19:18:42 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-DRWEB-SCAN: ok X-VRSPAM-SCORE: -100 X-VRSPAM-STATE: legit X-VRSPAM-CAUSE: gggruggvucftvghtrhhoucdtuddrfeelfedrgeefgdehfecutefuodetggdotefrucfrrhhofhhilhgvmecuggftfghnshhusghstghrihgsvgenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujfgurhepuffvfhfhkffffgggjggtgfesthejredttdefjeenucfhrhhomheptehlrghinhcuhfhrihhstghhuceorghlrghinhdrfhhrihhstghhsehlvgigihhfihdrtghomheqnecukfhppedukeehrddvfedrledvrddugeegnecurfgrrhgrmhepmhhouggvpehsmhhtphhouhht X-VRSPAM-EXTCAUSE: mhhouggvpehsmhhtphhouhht Subject: Re: [Caml-list] Announce: ocaml-vdom (pre-release) On 02/12/2016 17:59, Vincent Balat wrote: > > Using Tyxml with React is straightforward and makes your pages reactive > almost for free. > > If your page contains : > p [ text (string_of int i) ] > you juste replace this by > p [ R.text (React.S.map string_of int i) ] > > and it is automatically updated when the value of i changes ... I'm not sure to follow: in the "Elm/vdom" approach, the original p [ text (string_of int i) ] has the behavior you describe: the content of the text node will always be equal to "string_of_int i" and you don't have to do any explicit update to achieve that. That's the beauty of the model. I guess this could be qualified as "reactive" as well, except that the entire view is refreshed when any part of the state change (and the vdom diffing approach makes this viable). -- Alain