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 1FE107EE51 for ; Mon, 20 May 2013 16:01:31 +0200 (CEST) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of markus.mottl@gmail.com) identity=pra; client-ip=74.125.82.177; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="markus.mottl@gmail.com"; x-sender="markus.mottl@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of markus.mottl@gmail.com designates 74.125.82.177 as permitted sender) identity=mailfrom; client-ip=74.125.82.177; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="markus.mottl@gmail.com"; x-sender="markus.mottl@gmail.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@mail-we0-f177.google.com) identity=helo; client-ip=74.125.82.177; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="markus.mottl@gmail.com"; x-sender="postmaster@mail-we0-f177.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AicCAAYsmlFKfVKxjWdsb2JhbABagzjBP3YIFg4BAQEBBwsLCRIGJIIfAQEFQAEUBx0BAwwGBQsNLiEBAREBBQEcBhOHegEDD54GjD+CfYQTChknDViIEAEFDIw+glcHg1QDlVKBZowdgz4WKYRRIA X-IPAS-Result: AicCAAYsmlFKfVKxjWdsb2JhbABagzjBP3YIFg4BAQEBBwsLCRIGJIIfAQEFQAEUBx0BAwwGBQsNLiEBAREBBQEcBhOHegEDD54GjD+CfYQTChknDViIEAEFDIw+glcHg1QDlVKBZowdgz4WKYRRIA X-IronPort-AV: E=Sophos;i="4.87,707,1363129200"; d="scan'208";a="18181241" Received: from mail-we0-f177.google.com ([74.125.82.177]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 20 May 2013 16:01:30 +0200 Received: by mail-we0-f177.google.com with SMTP id n57so1017656wev.22 for ; Mon, 20 May 2013 07:01:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=jW1GhYim1JkPLf7cixPwwKO3Jhhz+ZhNDOKmXluy3eQ=; b=F3B7Fo3PSku6lIz5OcHGc3OMTO6e0lI2DmuPUnaWXTp/62VwEJG6/J278zRzxU6ess 6Dk9ROlEIKY+gu/3p54QqYNsXEFLGgpN1jPLL3eYLhFjd28D9aHCzzzrTM1+jNY9lNsG K8apSN9MTQffJRAOABX+3VL/43wQ9erEhtYBJxZ8ueFwh6xo0yJIMcUb0EXfSVjzsRqy SKU1+18GO58kMGBexkIB0fROtmvg+i+Dpp1W1GMt17fxqoCtN5g7+iVyMtLyyupvGr0/ jWRvfN06bYOWMINepNLfHn68n8O/ff0CKHZIUipD0VHQWn7miiyCmxy6dn2f1nXxUuEt bd3Q== MIME-Version: 1.0 X-Received: by 10.180.86.38 with SMTP id m6mr14230289wiz.25.1369058487557; Mon, 20 May 2013 07:01:27 -0700 (PDT) Received: by 10.194.16.70 with HTTP; Mon, 20 May 2013 07:01:27 -0700 (PDT) In-Reply-To: <5199D14E.5000205@frisch.fr> References: <5199D14E.5000205@frisch.fr> Date: Mon, 20 May 2013 10:01:27 -0400 Message-ID: From: Markus Mottl To: Alain Frisch Cc: OCaml List Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Subject: Re: [Caml-list] First-class modules in functor bodies On Mon, May 20, 2013 at 3:31 AM, Alain Frisch wrote: > Here is an counter-example provided by Didier R=E9my: [snip] > module F(U:sig end) =3D > (val (if !b then (module X1 : X) else (module X2 : X)) : X) Ah, yeah, that's evil. It's funny that even after years of using OCaml the applicative nature of functors sometimes surprises me. I admit to having done some SML in my youth, but I thought I was clean by now :) -- Markus Mottl http://www.ocaml.info markus.mottl@gmail.com