From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id p3TBHlrQ022058 for ; Fri, 29 Apr 2011 13:17:47 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AoYDAI2duk3RVdg2i2dsb2JhbACYSY00CBQBAQEKCwsHEgYhqhGKfIInhSM0iF4BAQMGhXgEhgeIYYgRgiM7gzA X-IronPort-AV: E=Sophos;i="4.64,287,1301868000"; d="scan'208";a="94072718" Received: from mail-qw0-f54.google.com ([209.85.216.54]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 29 Apr 2011 13:17:42 +0200 Received: by qwc9 with SMTP id 9so2973326qwc.27 for ; Fri, 29 Apr 2011 04:17:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type:content-transfer-encoding; bh=G9JMACgf4CrhiCH6UrHC8BU4nErX8pq8vEzDEgdh1eE=; b=ZYFZWis5hrSmBOpMAU5/wdpPeTLYrx2nAJU747ZoVK8jHbHPK48AFqGGQL5Rw78bfB jHcQfuRfY/55nsiWITLbZe5M6ofIEwbQm94MATUuzKvN7xcw25Hw21ezzt+/9voqnQMf 14Dgmhm7J8d65SvJalSpRhPXX8dcsdZLtML6o= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=S4cDkm4v6MFhlJCbhTieTpc58Itga3W2biyRmrqqhTZnqcbPtiBLNidMOLa7c6M0N5 Fdf6q35bSPK54IsVIX+5eAL4wJyRb5BCnFnBmLUjsu/rwOBF3tK0cDNgHXFqnSEIUdwc vfmNieC3cRogOfX56SP3JPh5q5/+P6bBiq680= MIME-Version: 1.0 Received: by 10.229.106.134 with SMTP id x6mr3750016qco.191.1304075860499; Fri, 29 Apr 2011 04:17:40 -0700 (PDT) Received: by 10.229.32.1 with HTTP; Fri, 29 Apr 2011 04:17:40 -0700 (PDT) In-Reply-To: <4DBA98D8.5020605@gmail.com> References: <164004794.892685.1304067487325.JavaMail.root@zmbs2.inria.fr> <20110429093355.GA25892@yquem.inria.fr> <4DBA98D8.5020605@gmail.com> Date: Fri, 29 Apr 2011 15:17:40 +0400 Message-ID: From: Dmitry Bely To: caml-list@inria.fr Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by walapai.inria.fr id p3TBHlrQ022058 Subject: Re: [Caml-list] Comparing variant types On Fri, Apr 29, 2011 at 2:54 PM, Andrew wrote: >> type dir = Left | Right | Up | Down | No_op >> >> let dir_equal d1 d2 = match d1,d2 with >> | (Left, Left) >> | (Right,Right) >> | (Up, Up) >> | (Down,Down) >> | (No_op,No_op) >>  ->  true >> | (Left,(Right|Up|Down|No_op)) >> | (Right,(Left|Up|Down|No_op)) >> | (Up,(Left|Right|Down|No_op)) >> | (Down,(Left|Right|Up|No_op)) >> | (No_op,(Down|Up|Right|Left)) >> ->  false > > > Why not write directly >        let dir_equal = fun d1 d2 -> >          | Left Left >          | Right Right >          | Up Up >          | Down Down >          | No_op No_op ->  true >          | _ -> false "Directly" means "syntactically incorrect"? :) As for _ clause - you'd better to avoid it. - Dmitry Bely