From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Lepiller Subject: [PATCH 57/96] gnu: Add ocaml-ppx-compare Date: Tue, 3 Jan 2017 20:11:38 +0100 Message-ID: <20170103191217.6431-58-julien@lepiller.eu> References: <20170103191217.6431-1-julien@lepiller.eu> Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:34463) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cOUYZ-0001Vq-MO for guix-devel@gnu.org; Tue, 03 Jan 2017 14:15:36 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cOUYY-0005yF-Ok for guix-devel@gnu.org; Tue, 03 Jan 2017 14:15:35 -0500 Received: from dau94-h03-89-91-205-84.dsl.sta.abo.bbox.fr ([89.91.205.84]:35440 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 1cOUYY-0005xi-GP for guix-devel@gnu.org; Tue, 03 Jan 2017 14:15:34 -0500 Received: from localhost (localhost [127.0.0.1]) by skaro.lepiller.eu (Postfix) with ESMTP id 9F040811BF for ; Tue, 3 Jan 2017 20:15:32 +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 WZSIb4NjDwB6 for ; Tue, 3 Jan 2017 20:15:28 +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 44CD081239 for ; Tue, 3 Jan 2017 20:13:18 +0100 (CET) In-Reply-To: <20170103191217.6431-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 | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index c028fa26c..369e1f769 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -2052,3 +2052,28 @@ 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") + (home-page "https://github.com/janestreet/ppx_compare/") + (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) + (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