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 mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id 7C7427EFCD for ; Sat, 4 Oct 2014 15:36:45 +0200 (CEST) Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of mmatalka@gmail.com) identity=pra; client-ip=74.125.82.50; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="mmatalka@gmail.com"; x-sender="mmatalka@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of mmatalka@gmail.com designates 74.125.82.50 as permitted sender) identity=mailfrom; client-ip=74.125.82.50; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="mmatalka@gmail.com"; x-sender="mmatalka@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-wg0-f50.google.com) identity=helo; client-ip=74.125.82.50; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="mmatalka@gmail.com"; x-sender="postmaster@mail-wg0-f50.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AjABAJ32L1RKfVIylGdsb2JhbABgFoJVdljLKIZ5VAKBBRYBEQEBAQEHCwsJEi6EBAEBAwESLgEbHQEDAQsGBQsWJQ8BBA8RAQUBIhMiiAcBAwkIAQQInRZujSKDEIhVChknDWeGMQERAQUOkDcHhEsFj1qGVocOgWiSJkGFFGwBAQGCRwEBAQ X-IPAS-Result: AjABAJ32L1RKfVIylGdsb2JhbABgFoJVdljLKIZ5VAKBBRYBEQEBAQEHCwsJEi6EBAEBAwESLgEbHQEDAQsGBQsWJQ8BBA8RAQUBIhMiiAcBAwkIAQQInRZujSKDEIhVChknDWeGMQERAQUOkDcHhEsFj1qGVocOgWiSJkGFFGwBAQGCRwEBAQ X-IronPort-AV: E=Sophos;i="5.04,653,1406584800"; d="scan'208";a="81927725" Received: from mail-wg0-f50.google.com ([74.125.82.50]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 04 Oct 2014 15:36:44 +0200 Received: by mail-wg0-f50.google.com with SMTP id a1so3372646wgh.21 for ; Sat, 04 Oct 2014 06:36:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-type; bh=l3A2SwX6ZkDzGos3MICo+UxdGKEKck4HmnaL2uAFbpM=; b=iTHRuLP5e/CgiJd73Pw+Hxn87b/5GqaYQFKFsD7Ib8RUzihqSWJ5yxB4wHDfx2P4PK B2ZAhajjkEumjfYKM4ybmPuKHNSptzmHZoXXkUvEj8cVg7ElJ5iTftLy5bZl7G9aqStG L44MSKB1Uw+z2Xi71nKItjT8PhqddtLDkrTvx0W5SFXiEXBBafitAKAnEH2aH8nWYkE1 xcG/ALeciwJRZaFF/Q/pZbbT5xu3xSPNan+0HFKS47p1ZiYqvmlompK3Hq5Vk61KbTBC tn7k/D5O2WC6i9eZHvN3Y+i5h6mT5jdAlrD5f8/lNZSKzyguD7aZKWIh4/UIR2IXuai5 qylQ== X-Received: by 10.180.14.97 with SMTP id o1mr5773643wic.66.1412429804292; Sat, 04 Oct 2014 06:36:44 -0700 (PDT) Received: from localhost ([2a01:7e00::f03c:91ff:fe70:2696]) by mx.google.com with ESMTPSA id pk9sm10969639wjb.16.2014.10.04.06.36.43 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 04 Oct 2014 06:36:43 -0700 (PDT) From: Malcolm Matalka To: Marek Kubica Cc: Caml List References: <20141004150511.7e8de126@xivilization.net> Date: Sat, 04 Oct 2014 13:36:43 +0000 In-Reply-To: <20141004150511.7e8de126@xivilization.net> (Marek Kubica's message of "Sat, 4 Oct 2014 15:05:11 +0200") Message-ID: <87a95cklck.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Subject: Re: [Caml-list] [ANN] slacko-0.9.0 I would either change the 'apierror' type to normal variants, or spread out the apierror to multiple types. Can every API function really return every one of those errors? The value of polymorphic variants is they are module, and you can share the constructors across types. I would also structure the API calls in terms of the Result.t type in Core. Right now success is part of the error type. My 2 cents. Marek Kubica writes: > Hello, > > I'd like to announce the first public release of Slacko, a REST API > binding to Slack . I'm looking for input on it, so > I can publish a 1.0 soon. > > The source code can be found on GitHub, > and it is already > uploaded in OPAM . > > More information can be found on my blog, > . > > Hope it will prove useful to someone. > > regards, > Marek