guix-commits
[Top][All Lists]
Advanced

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

23/26: gnu: Add mgl-pax.


From: Pierre Neidhardt
Subject: 23/26: gnu: Add mgl-pax.
Date: Fri, 24 Aug 2018 09:14:07 -0400 (EDT)

ambrevar pushed a commit to branch wip-next-browser
in repository guix.

commit 138a2c4a3786b199f6823dbe65e4a8733966626d
Author: Pierre Neidhardt <address@hidden>
Date:   Fri Aug 24 13:10:55 2018 +0200

    gnu: Add mgl-pax.
    
    * gnu/packages/lisp.scm (cl-mgl-pax, ecl-mgl-pax, sbcl-mgl-pax): New 
variables.
---
 gnu/packages/lisp.scm | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 72 insertions(+)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 621225c..82a82d3 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -2123,3 +2123,75 @@ writing code that contains string literals that contain 
code themselves.")
 
 (define-public ecl-pythonic-string-reader
   (sbcl-package->ecl-package sbcl-pythonic-string-reader))
+
+(define-public sbcl-mgl-pax
+  (let ((commit "818448418d6b9de74620f606f5b23033c6082769"))
+    (package
+      (name "sbcl-mgl-pax")
+      (version (git-version "0.0.0" "1" commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/melisgl/mgl-pax";)
+               (commit commit)))
+         (sha256
+          (base32
+           "1p97zfkh130bdxqqxwaw2j9psv58751wakx7czbfpq410lg7dd7i"))
+         (file-name (git-file-name "mgl-pax" version))))
+      (build-system asdf-build-system/sbcl)
+      (inputs
+       `(("3bmd" ,sbcl-3bmd)
+         ("3bmd-ext-code-blocks" ,sbcl-3bmd-ext-code-blocks)
+         ("babel" ,sbcl-babel)
+         ("cl-fad" ,sbcl-cl-fad)
+         ("ironclad" ,sbcl-ironclad)
+         ("named-readtables" ,sbcl-named-readtables)
+         ("pythonic-string-reader" ,sbcl-pythonic-string-reader)
+         ;; TODO: Fix SWANK compilation error.
+         ;; ("slime" ,emacs-slime)
+         ;; ("swank" ,sbcl-slime-swank)
+         ))
+      (arguments
+       `(#:phases
+         (modify-phases %standard-phases
+           (add-before 'build 'rename-swank-backend
+             (lambda* (#:key inputs #:allow-other-keys)
+               (substitute* '("src/pax.lisp" "src/utility.lisp")
+                 (("swank-backend") "swank/backend")))))))
+      ;; (arguments
+      ;;  `(#:phases
+      ;;    (modify-phases %standard-phases
+      ;;      (add-before 'build 'add-swank-lib-to-path
+      ;;        (lambda* (#:key inputs #:allow-other-keys)
+      ;;          (setenv "LIBRARY_PATH"
+      ;;                  (string-append (assoc-ref inputs "slime")
+      ;;                                 "/share/emacs/site-lisp/guix.d/slime-"
+      ;;                                 ,(package-version emacs-slime)
+      ;;                                 ":"
+      ;;                                 (or (getenv "LIBRARY_PATH") "")))
+      ;;          #t)))))
+      (synopsis "Exploratory programming environment and documentation 
generator")
+      (description
+       "PAX provides an extremely poor man's Explorable Programming
+environment.  Narrative primarily lives in so called sections that mix markdown
+docstrings with references to functions, variables, etc, all of which should
+probably have their own docstrings.
+
+The primary focus is on making code easily explorable by using SLIME's
address@hidden (@command{slime-edit-definition}).  See how to enable some
+fanciness in Emacs Integration. Generating documentation from sections and all
+the referenced items in Markdown or HTML format is also implemented.
+
+With the simplistic tools provided, one may accomplish similar effects as with
+Literate Programming, but documentation is generated from code, not vice versa
+and there is no support for chunking yet.  Code is first, code must look
+pretty, documentation is code.")
+      (home-page "http://quotenil.com/";)
+      (license license:expat))))
+
+(define-public cl-mgl-pax
+  (sbcl-package->cl-source-package sbcl-mgl-pax))
+
+(define-public ecl-mgl-pax
+  (sbcl-package->ecl-package sbcl-mgl-pax))



reply via email to

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