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 3D89D7EE25 for ; Mon, 28 Oct 2013 14:08:25 +0100 (CET) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of jacques.garrigue@gmail.com) identity=pra; client-ip=209.85.223.172; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="jacques.garrigue@gmail.com"; x-sender="jacques.garrigue@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of jacques.garrigue@gmail.com designates 209.85.223.172 as permitted sender) identity=mailfrom; client-ip=209.85.223.172; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="jacques.garrigue@gmail.com"; x-sender="jacques.garrigue@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-ie0-f172.google.com) identity=helo; client-ip=209.85.223.172; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="jacques.garrigue@gmail.com"; x-sender="postmaster@mail-ie0-f172.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AkQeANJgblLRVd+slGdsb2JhbABZgz9UrAAHihGITIEaCBYOAQEBAQcLCwkSKoIlAQEEAScZAS0LAQMBCwEFBQQHAwoNISISAQUBChIGExKHYwMJBg2ZbI9ghC4nAwpXiQ4BAgMGAQWPRYQ3A4k9jk2BL45sGCmBZIJ8LQ X-IPAS-Result: AkQeANJgblLRVd+slGdsb2JhbABZgz9UrAAHihGITIEaCBYOAQEBAQcLCwkSKoIlAQEEAScZAS0LAQMBCwEFBQQHAwoNISISAQUBChIGExKHYwMJBg2ZbI9ghC4nAwpXiQ4BAgMGAQWPRYQ3A4k9jk2BL45sGCmBZIJ8LQ X-IronPort-AV: E=Sophos;i="4.93,586,1378850400"; d="scan'208";a="39167233" Received: from mail-ie0-f172.google.com ([209.85.223.172]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 28 Oct 2013 14:08:16 +0100 Received: by mail-ie0-f172.google.com with SMTP id tp5so11258647ieb.31 for ; Mon, 28 Oct 2013 06:08:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=eRuRmL6WC939hk13KhKzaJG4sorSSO+nQ6nYUFH906U=; b=BXOCmKUAGYMjxp1dKBiWtFk6GKt70b1+RpPSpKGMlPD0Ww6vpGdXtLijGvgiv5fjde oqfcRMPL4thVSe4fSov9JjbYgaAbPfvLiBvCNsc/ObPpVvSzPCfG86gPnuseOfb0Yhkq nx2dCux7o+3loFZzfc9ec4jJ5bzgRBv9GVwEhaJyIUAPQuxe9q0/43505ZolJEN3SBx1 WmgR+GaxZ9zSFDss8JkPACE8nyhD4uL7SyB4MrPLYdr/nq189frv8XOS/vLGS1BMy0LZ OimpPNhvMwXNBX/8O2qzEsSWlyD7fhxXgTTdfn6OGgJCwmvJPUXsJpoQC2MDJsJyn3xW MGSg== MIME-Version: 1.0 X-Received: by 10.42.98.76 with SMTP id r12mr357798icn.59.1382965703133; Mon, 28 Oct 2013 06:08:23 -0700 (PDT) Sender: jacques.garrigue@gmail.com Received: by 10.50.127.233 with HTTP; Mon, 28 Oct 2013 06:08:23 -0700 (PDT) In-Reply-To: References: <526D5AF9.9030303@coherentgraphics.co.uk> <20131028144215.3e546e24@kiwi.local.tld> Date: Mon, 28 Oct 2013 22:08:23 +0900 X-Google-Sender-Auth: qKJhv4vwnup6EHLyu_A2_K4aPvg Message-ID: From: Jacques Garrigue To: Yaron Minsky Cc: ygrek , "caml-list@inria.fr" Content-Type: multipart/alternative; boundary=90e6ba614a9678d06904e9cccb40 Subject: Re: [Caml-list] Should -strict-sequence become the default? --90e6ba614a9678d06904e9cccb40 Content-Type: text/plain; charset=ISO-8859-1 Yaron Minsky yminsky@janestreet.com: > Interesting. Anyone know if the disabling of 21 with strict-sequence > is a fundamental issue, or just an accident? It seems best to have > both available at once. This is most certainly an accident. I should look into that. (However preserving 21 would change some error messages too) This said, I personally do not like the statement warning, and I'm not a big fan of -strict-sequence either, as both require changes in APIs. This said, I prefer the option to the warning: at least it gives strong guarantees. Jacques > > On Mon, Oct 28, 2013 at 8:42 AM, ygrek > > wrote: > > Hello, > > > > I have one problem with this option. Basically - it disables warning 21. > Consider: > > > > $ ocaml > > > > # let f () = exit 0; 1;; > > Characters 11-17: > > let f () = exit 0; 1;; > > ^^^^^^ > > Warning 21: this statement never returns (or has an unsound type.) > > val f : unit -> int = > > > > $ ocaml -strict-sequence > > > > # let f () = exit 0; 1;; > > val f : unit -> int = > > > > So I choose to disable this option and strictly require `let () =` when > calling callbacks. > > > > -- > > > > -- > > Caml-list mailing list. Subscription management and archives: > > https://sympa.inria.fr/sympa/arc/caml-list > > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > > Bug reports: http://caml.inria.fr/bin/caml-bugs > > -- > Caml-list mailing list. Subscription management and archives: > https://sympa.inria.fr/sympa/arc/caml-list > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs > --90e6ba614a9678d06904e9cccb40 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Yaron Minsky yminsky@janestreet.c= om:
Interesting. =A0Anyone know if th= e disabling of 21 with strict-sequence
is a fundamental issue, or just an accident? =A0It seems best to have
both available at once.

This is most certai= nly an accident.
I should look into that.
(However=A0pr= eserving 21 would change some error messages too)

This said, I personally do not like the statement warning, and I'm not = a big fan of
-strict-sequence either, as both require changes in = APIs.
This said, I prefer the option to the warning: at least it = gives strong guarantees.

Jacques=A0

On Mon, Oct 28, 2013 at 8:42 AM, ygrek <ygrek@autisti= ci.org> wrote:
> Hello,
>
> I have one problem with this option. Basically - it disables warning 2= 1. Consider:
>
> $ ocaml
>
> # let f () =3D exit 0; 1;;
> Characters 11-17:
> =A0 let f () =3D exit 0; 1;;
> =A0 =A0 =A0 =A0 =A0 =A0 =A0^^^^^^
> Warning 21: this statement never returns (or has an unsound type.)
> val f : unit -> int =3D <fun>
>
> $ ocaml -strict-sequence
>
> # let f () =3D exit 0; 1;;
> val f : unit -> int =3D <fun>
>
> So I choose to disable this option and strictly require `let () =3D` w= hen calling callbacks.
>
> --
>
> --
> Caml-list mailing list. =A0Subscription management and archives:
> https://sympa.inria.fr/sympa/arc/caml-list
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports:
http://caml.inria.fr/bin/caml-bugs

--
Caml-list mailing list. =A0Subscription management and archives:
ht= tps://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs
--90e6ba614a9678d06904e9cccb40--