unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Jesse Gibbons <jgibbons2357@gmail.com>
To: 38554 <38554@debbugs.gnu.org>
Subject: [bug#38554] [PATCH v2 2/3] gnu: Add python-funcparserlib.
Date: Sat, 21 Dec 2019 10:14:21 -0700	[thread overview]
Message-ID: <b831ff9aae2414afaedd82957a5b197bdbb8973c.camel@gmail.com> (raw)
In-Reply-To: <660a10a1f02b4818a28dfea58b544956437d4b66.camel@gmail.com>

* gnu/packages/python-xyz.scm (python-funcparserlib): New variable.
---
 gnu/packages/python-xyz.scm | 49 +++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 9243272dc9..906bd9c8d2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16998,3 +16998,52 @@ load entry points more quickly.")
 
 (define-public python2-fastentrypoints
   (package-with-python2 python-fastentrypoints))
+
+(define-public python-funcparserlib
+  (package
+    (name "python-funcparserlib")
+    (version "0.3.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "funcparserlib" version))
+       (sha256
+        (base32
+         "07f9cgjr3h4j2m67fhwapn8fja87vazl58zsj4yppf9y3an2x6dp"))))
+    (native-inputs
+     `(("python-tox" ,python-tox)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda _
+             (invoke "tox"))))))
+    (build-system python-build-system)
+    (home-page
+     "https://github.com/vlasovskikh/funcparserlib")
+    (synopsis
+     "Recursive descent parsing library based on functional combinators")
+    (description
+     "This package is a recurisve descent parsing library for Python based
on
+functional combinators.  Parser combinators are just higher-order functions
that
+take parsers as their arguments and return them as result values.  Parser
+combinators are:
+
+@itemize @bullet
+@item First-class values
+@item Extremely composable
+@item Tend to make the code quite compact
+@item Resemble the readable notation of xBNF grammars
+@end itemize
+
+Parsers made with funcparserlib are pure-Python LL(*) parsers.  It means
that
+it's very easy to write them without thinking about look-aheads and all
that
+hardcore parsing stuff.  But the recursive descent parsing is a rather slow
+method compared to LL(k) or LR(k) algorithms.
+
+So the primary domain for funcparserlib is parsing little languages or
external
+DSLs (domain specific languages).")
+    (license license:expat)))
+
+(define-public python2-funcparserlib
+  (package-with-python2 python-funcparserlib))

  parent reply	other threads:[~2019-12-21 17:15 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-10  2:29 [bug#38554] [PATCH 0/5] Update python-hy to 0.17.0 Jesse Gibbons
2019-12-10  2:35 ` [bug#38554] [PATCH 1/5] Add python-fastentrypoints Jesse Gibbons
2019-12-10  2:36 ` [bug#38554] [PATCH 2/5] Add python-funcparserlib Jesse Gibbons
2019-12-10  2:37 ` [bug#38554] [PATCH 3/5] Update python-hy to 0.17.0 Jesse Gibbons
2019-12-10  2:37 ` [bug#38554] [PATCH 4/5] Add python2-fastentrypoints Jesse Gibbons
2019-12-12 17:18   ` zimoun
2019-12-16  0:37     ` Jesse Gibbons
2019-12-10  2:38 ` [bug#38554] [PATCH 5/5] Add python2-funcparserlib Jesse Gibbons
2019-12-10  4:25 ` [bug#38554] [PATCH 0/5] Update python-hy to 0.17.0 Brett Gilio
2019-12-10 21:59   ` Jesse Gibbons
2019-12-12 17:23     ` zimoun
2019-12-21 17:14 ` [bug#38554] [PATCH v2 1/3] gnu: Add python-fastentrypoints Jesse Gibbons
2019-12-21 17:14 ` Jesse Gibbons [this message]
2019-12-21 17:14 ` [bug#38554] [PATCH v2 3/3] gnu: python-hy: Update to 0.17.0 Jesse Gibbons
2019-12-25  7:27   ` bug#38554: " Brett Gilio

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b831ff9aae2414afaedd82957a5b197bdbb8973c.camel@gmail.com \
    --to=jgibbons2357@gmail.com \
    --cc=38554@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).