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 153AB7FBEB for ; Wed, 14 Jan 2015 18:24:24 +0100 (CET) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of lpw25@cam.ac.uk) identity=pra; client-ip=131.111.8.140; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="lpw25@cam.ac.uk"; x-sender="lpw25@cam.ac.uk"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of lpw25@cam.ac.uk) identity=mailfrom; client-ip=131.111.8.140; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="lpw25@cam.ac.uk"; x-sender="lpw25@cam.ac.uk"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@ppsw-40.csi.cam.ac.uk) identity=helo; client-ip=131.111.8.140; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="lpw25@cam.ac.uk"; x-sender="postmaster@ppsw-40.csi.cam.ac.uk"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ah0BAJSltlSDbwiMnGdsb2JhbABbhDCDBbA2Bpg0AoEWQwEBAQEBEQEBAQEBCAsJCRQuhA0BBAEjSQoDEAsaAgUhAgIPAQQNPBOIGAMJCL04kCsNRYMqAQEIAQEBAR6BIYRkh0qBdzMHgmiBQQWWC41chWSEEG+CQwEBAQ X-IPAS-Result: Ah0BAJSltlSDbwiMnGdsb2JhbABbhDCDBbA2Bpg0AoEWQwEBAQEBEQEBAQEBCAsJCRQuhA0BBAEjSQoDEAsaAgUhAgIPAQQNPBOIGAMJCL04kCsNRYMqAQEIAQEBAR6BIYRkh0qBdzMHgmiBQQWWC41chWSEEG+CQwEBAQ X-IronPort-AV: E=Sophos;i="5.07,757,1413237600"; d="scan'208";a="117034047" Received: from ppsw-40.csi.cam.ac.uk ([131.111.8.140]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-SHA; 14 Jan 2015 18:24:23 +0100 X-Cam-AntiVirus: no malware found X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/ Received: from kingston.cl.cam.ac.uk ([128.232.64.15]:52799) by ppsw-40.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.156]:587) with esmtpsa (PLAIN:lpw25) (TLSv1.2:AES128-GCM-SHA256:128) id 1YBRg6-0003xl-lT (Exim 4.82_3-c0e5623) (return-path ); Wed, 14 Jan 2015 17:24:22 +0000 From: Leo White To: Milan =?utf-8?Q?Stanojevi=C4=87?= Cc: Jacques Garrigue , Thomas Braibant , OCaml Mailing List References: <877fwqqua0.fsf@study.localdomain> <87twzup6ie.fsf@study.localdomain> X-Face: "XWxb[u_Z\PA_Y?9@|IA!!+jTb(/290-*ea/Un$I0B98.$n%eL.;2w*,z]WR#T:,p[ NBd++M7l]#7zj7!{~iw $W-"/=|dVjhT[D{4~gE}gK<2`.6fs!;uqqud]vs2N/3^m7{aS1V, Date: Wed, 14 Jan 2015 17:24:22 +0000 In-Reply-To: ("Milan \=\?utf-8\?Q\?Stanojevi\=C4\=87\=22's\?\= message of "Wed, 14 Jan 2015 11:32:49 -0500") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [Caml-list] Quizz Milan Stanojevi=C4=87 writes: >> The main problem is not so much syntax, as the fact it would require to = make >> all definitions in the Types module mutually recursive. Not only that, b= ut >> operations like path substitution need to be mutually recursive in the s= ame >> way. So the question is whether the small gain in flexibility is worth m= aking the >> implementation more complex. >> (Note that an extra gain is that it becomes possible to expand a module = type >> definition when leaving its scope) > > In my work I mostly just wanted to be able to just do something like > (module M : Intable with type t =3D t), i.e just specializing existing > module type with "with type =3D" or "with type :=3D". > Is this special case any easier to implement? "with type t =3D" already works. I'm not sure, but I think that "with type t :=3D" could indeed be implemented without the increased implementation complexity that Jacques was referring to. Regards, Leo