From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Lepiller Subject: [PATCH 10/10] gnu: Add ocaml-ppx-compare. Date: Tue, 31 Jan 2017 21:58:15 +0100 Message-ID: <20170131205815.14576-11-julien@lepiller.eu> References: <20170131205815.14576-1-julien@lepiller.eu> Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:34942) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cYfW0-0007th-Ut for guix-devel@gnu.org; Tue, 31 Jan 2017 15:59:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cYfVx-0005jC-Uz for guix-devel@gnu.org; Tue, 31 Jan 2017 15:59:01 -0500 Received: from dau94-h03-89-91-205-84.dsl.sta.abo.bbox.fr ([89.91.205.84]:41378 helo=skaro.lepiller.eu) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cYfVx-0005iR-Lw for guix-devel@gnu.org; Tue, 31 Jan 2017 15:58:57 -0500 Received: from localhost (localhost [127.0.0.1]) by skaro.lepiller.eu (Postfix) with ESMTP id 73F8A7F936 for ; Tue, 31 Jan 2017 21:58:55 +0100 (CET) Received: from skaro.lepiller.eu ([127.0.0.1]) by localhost (lepiller.eu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XEeQoRmCTy_g for ; Tue, 31 Jan 2017 21:58:50 +0100 (CET) Received: from localhost.localdomain (128-79-116-134.hfc.dyn.abo.bbox.fr [128.79.116.134]) by skaro.lepiller.eu (Postfix) with ESMTPSA id 1EE5180B00 for ; Tue, 31 Jan 2017 21:58:37 +0100 (CET) In-Reply-To: <20170131205815.14576-1-julien@lepiller.eu> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel@gnu.org * gnu/packages/ocaml.scm (ocaml-ppx-compare): New variable. --- gnu/packages/ocaml.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 0410dbe83..3238896b5 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -2253,3 +2253,30 @@ different preprocessors that generate code from type specifications.") (synopsis "Syntax extension for writing in-line benchmarks in ocaml code") (description "Syntax extension for writing in-line benchmarks in ocaml code.") (license license:asl2.0))) + +(define-public ocaml-ppx-compare + (package + (name "ocaml-ppx-compare") + (version "113.33.03") + (source (janestreet-origin "ppx_compare" version + "0bfhi33kq9l4q6zzc6svki2csracz5j4731c3npcy6cs73jynn0z")) + (build-system ocaml-build-system) + (native-inputs + `(("js-build-tools" ,ocaml-js-build-tools) + ("opam" ,opam) + ("ppx-core" ,ocaml-ppx-core))) + (propagated-inputs + `(("ppx-driver" ,ocaml-ppx-driver) + ("ppx-tools" ,ocaml-ppx-tools) + ("ppx-core" ,ocaml-ppx-core) + ("ppx-type-conv" ,ocaml-ppx-type-conv))) + (arguments janestreet-arguments) + (home-page "https://github.com/janestreet/ppx_compare/") + (synopsis "Generation of comparison functions from types") + (description "Generation of fast comparison functions from type expressions +and definitions. Ppx_compare is a ppx rewriter that derives comparison functions +from type representations. The scaffolded functions are usually much faster +than ocaml's Pervasives.compare. Scaffolding functions also gives you more +flexibility by allowing you to override them for a specific type and more safety +by making sure that you only compare comparable values.") + (license license:asl2.0))) -- 2.11.0