[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

05/06: gnu: Add sbcl-cl-uglify-js.

From: Ricardo Wurmus
Subject: 05/06: gnu: Add sbcl-cl-uglify-js.
Date: Thu, 1 Jun 2017 17:32:42 -0400 (EDT)

rekado pushed a commit to branch master
in repository guix.

commit 52650a4d2eb6ad54a638a139608f4b3d87d7905f
Author: Ricardo Wurmus <address@hidden>
Date:   Thu Dec 29 19:51:52 2016 +0100

    gnu: Add sbcl-cl-uglify-js.
    * gnu/packages/lisp.scm (sbcl-cl-uglify-js): New variable.
 gnu/packages/lisp.scm | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 669005d..08e6b44 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -1301,3 +1301,43 @@ It is similar to the @code{CL:LOOP} macro, with these 
distinguishing marks:
 @item it isn't part of the ANSI standard for Common Lisp.
 @end itemize\n")
     (license license:expat)))
+(define-public sbcl-cl-uglify-js
+  ;; There have been many bug fixes since the 2010 release.
+  (let ((commit "429c5e1d844e2f96b44db8fccc92d6e8e28afdd5")
+        (revision "1"))
+    (package
+      (name "sbcl-cl-uglify-js")
+      (version (string-append "0.1-" revision "." (string-take commit 9)))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "";)
+               (commit commit)))
+         (sha256
+          (base32
+           "0k39y3c93jgxpr7gwz7w0d8yknn1fdnxrjhd03057lvk5w8js27a"))))
+      (build-system asdf-build-system/sbcl)
+      (inputs
+       `(("sbcl-parse-js" ,sbcl-parse-js)
+         ("sbcl-cl-ppcre" ,sbcl-cl-ppcre)
+         ("sbcl-cl-ppcre-unicode" ,sbcl-cl-ppcre-unicode)
+         ("sbcl-parse-number" ,sbcl-parse-number)
+         ("sbcl-iterate" ,sbcl-iterate)))
+      (home-page "";)
+      (synopsis "JavaScript compressor library for Common Lisp")
+      (description "This is a Common Lisp version of UglifyJS, a JavaScript
+compressor.  It works on data produced by @code{parse-js} to generate a
address@hidden version of the code.  Currently it can:
address@hidden reduce variable names (usually to single letters)
address@hidden join consecutive @code{var} statements
address@hidden resolve simple binary expressions
address@hidden group most consecutive statements using the ``sequence'' 
operator (comma)
address@hidden remove unnecessary blocks
address@hidden convert @code{IF} expressions in various ways that result in 
smaller code
address@hidden remove some unreachable code
address@hidden itemize\n")
+      (license license:zlib))))

reply via email to

[Prev in Thread] Current Thread [Next in Thread]