From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id A37D87EE4B for ; Fri, 27 Sep 2013 17:31:02 +0200 (CEST) Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of anthony.tavener@gmail.com) identity=pra; client-ip=209.85.215.176; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="anthony.tavener@gmail.com"; x-sender="anthony.tavener@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of anthony.tavener@gmail.com designates 209.85.215.176 as permitted sender) identity=mailfrom; client-ip=209.85.215.176; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="anthony.tavener@gmail.com"; x-sender="anthony.tavener@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-ea0-f176.google.com) identity=helo; client-ip=209.85.215.176; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="anthony.tavener@gmail.com"; x-sender="postmaster@mail-ea0-f176.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AiEDAN2jRVLRVdewlGdsb2JhbABahAUMwEuBFAgWDgEBAQEHCwsJEiqCJQEBBAFAARsdAQMMBgUEAQYDOCEBAREBBQEcBhOHcwEDCQacEYxSgwqECgoZJw1kiQABBQyMWoEtgT4HhCADiTmMXYFpjESDShgphGwdgS0 X-IPAS-Result: AiEDAN2jRVLRVdewlGdsb2JhbABahAUMwEuBFAgWDgEBAQEHCwsJEiqCJQEBBAFAARsdAQMMBgUEAQYDOCEBAREBBQEcBhOHcwEDCQacEYxSgwqECgoZJw1kiQABBQyMWoEtgT4HhCADiTmMXYFpjESDShgphGwdgS0 X-IronPort-AV: E=Sophos;i="4.90,994,1371074400"; d="scan'208";a="28340695" Received: from mail-ea0-f176.google.com ([209.85.215.176]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 27 Sep 2013 17:31:02 +0200 Received: by mail-ea0-f176.google.com with SMTP id q16so1289294ead.21 for ; Fri, 27 Sep 2013 08:31:01 -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; bh=mBAJ5jrpszkfKFxp2aRq6+oawiGthBwaHkfFb4PdLIg=; b=iQ7sARbvKEAtG99uP+TBU1vHDQK9B/NU73mh8o3xR+Sai+Ekyia+1ZCxeBlCTOkEjC Dj7lKPsuImpEvMeEL4ELUfY8TkDQDGBXsZtWEjISLZCYBxMfktz3z9rFIgYbzrtmy3N/ +jPbDtstEd88LNlNFhZRFTvVKgBcI5dpWrZ4xBIKbA0rkZ27GoJv/3uUqgKjogmav/RA xxGM+Uwry0EQqiqgqDMsiugH+wHho0Y3SNpJ1Y74b1GNcE/6S6uNcpEDb5N18y+ff/Xk /n5TOnsr/PwsnLAKx9pRt1tqQgtcAV5JFrGp6l/OGS+VYuGqk0Pd4Ar6nthOZsHDuXQb 73Og== MIME-Version: 1.0 X-Received: by 10.15.75.73 with SMTP id k49mr11133859eey.36.1380295861537; Fri, 27 Sep 2013 08:31:01 -0700 (PDT) Received: by 10.14.10.68 with HTTP; Fri, 27 Sep 2013 08:31:01 -0700 (PDT) In-Reply-To: References: Date: Fri, 27 Sep 2013 09:31:01 -0600 Message-ID: From: Anthony Tavener To: Dmitry Grebeniuk Cc: Yotam Barnoy Content-Type: multipart/alternative; boundary=001a11c1af4c832d0704e75f2c4d Subject: Re: [Caml-list] Proposal: re-design of ocaml headers --001a11c1af4c832d0704e75f2c4d Content-Type: text/plain; charset=ISO-8859-1 On Fri, Sep 27, 2013 at 9:08 AM, Dmitry Grebeniuk wrote: > > Why will anyone ever need more than 200 constructors of a sum type? > (also note the presence of polymorphic variant types.) > > Back when I read about the limit on constructors I had a moment of worry. Thankfully the limit is only on non-constant constructors. I currently have a variant with 292 constructors, but only 30 are non-constant. These represent optional characteristics a character may have in a game, some with additional payload. I could imagine all of them having their own payload, but of course there are other options, like polymorphic variants, or encoding these purely as data rather than types. I wanted to share that as a "be careful of what seems impossible from your perspective". ;) --001a11c1af4c832d0704e75f2c4d Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable

= On Fri, Sep 27, 2013 at 9:08 AM, Dmitry Grebeniuk <gdsfh1@gmail.com>= wrote:

=A0 Why will anyone ever need more than 200 constructors of a sum type?
(also note the presence of polymorphic variant types.)


Back whe= n I read about the limit on constructors I had a moment of worry.
Thankfully the limit is only on non-constant constructors.

I currently have a variant with 292 constructors, but = only 30 are non-constant.
These represent optional characte= ristics a character may have in a game, some
with additiona= l payload. I could imagine all of them having their own payload,
but of course there are other options, like polymorphic variants= , or encoding these
purely as data rather than types.
=

I wanted to share that as a "be carefu= l of what seems impossible from your
perspective". ;)=A0
--001a11c1af4c832d0704e75f2c4d--