commit 46e088259b7729c82eede46d0e32115c01f96463 Author: bigbug Date: Thu Jun 27 12:27:09 2024 -0500 add chicken-srfi-99, chicken-miscmacros, chicken-packrat, chicken-json, and chicken-queues diff --git a/gnu/packages/chicken.scm b/gnu/packages/chicken.scm index 8f5e8ce98d..93a79fbe8c 100644 --- a/gnu/packages/chicken.scm +++ b/gnu/packages/chicken.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2020 Ekaitz Zarraga ;;; Copyright © 2020 Evan Hanson ;;; Copyright © 2020 raingloom +;;; Copyright © 2024 bigbug ;;; ;;; This file is part of GNU Guix. ;;; @@ -227,6 +228,27 @@ (define-public chicken-srfi-69 @uref{https://srfi.schemers.org/srfi-90/srfi-90.html, SRFI-90} extensions.") (license license:bsd-3))) +(define-public chicken-srfi-99 + (package + (name "chicken-srfi-99") + (version "1.4.5") + (source (origin + (method url-fetch) + (uri (egg-uri "srfi-99" version)) + (sha256 + (base32 + "033hid04aaph0xmsc68r417dnjyswfqyd20y5cl4q3v8izqi54ks")))) + (build-system chicken-build-system) + (arguments '(#:egg-name "srfi-99")) + (propagated-inputs + (list chicken-srfi-69 chicken-srfi-1 chicken-miscmacros)) + (native-inputs + (list chicken-test)) + (home-page "https://wiki.call-cc.org/eggref/5/srfi-99#srfi-99") + (synopsis "SRFI-99 record types.") + (description "This egg consists of a single library, srfi-99, that provides a number of public modules.") + (license license:bsd-3))) + (define-public chicken-agrep (package (name "chicken-agrep") @@ -315,6 +337,78 @@ (define-public chicken-iset with integers.") (license license:bsd-3))) +(define-public chicken-json + (package + (name "chicken-json") + (version "1.6") + (source (origin + (method url-fetch) + (uri (egg-uri "json" version)) + (sha256 + (base32 + "1h27h6z7awadijk9w51df9dyk3wma27fp180j7xwl27sbw7h76wz")))) + (build-system chicken-build-system) + (arguments '(#:egg-name "json")) + (propagated-inputs + (list chicken-packrat chicken-srfi-69 chicken-srfi-1)) + (home-page "https://wiki.call-cc.org/eggref/5/json") + (synopsis "A json library") + (description "This egg implements a parser and generator for the JSON data interchange format.") + (license license:expat))) + +(define-public chicken-miscmacros + (package + (name "chicken-miscmacros") + (version "1.0") + (source (origin + (method url-fetch) + (uri (egg-uri "miscmacros" version)) + (sha256 + (base32 + "0xs8ksnbpxm0a1s2bcqybliaqpr5agin4ksn3hyjwniqhzx4qzg8")))) + (build-system chicken-build-system) + (arguments '(#:egg-name "miscmacros")) + (home-page "https://wiki.call-cc.org/eggref/5/miscmacros") + (synopsis "Various helper macros") + (description "This egg provides various useful, little macros") + (license license:bsd-3))) + +(define-public chicken-packrat + (package + (name "chicken-packrat") + (version "1.5") + (source (origin + (method url-fetch) + (uri (egg-uri "packrat" version)) + (sha256 + (base32 + "0d7ly5zvswg07gzm504min730qy16yafz3acyq45smd7q52s47fp")))) + (build-system chicken-build-system) + (arguments '(#:egg-name "packrat")) + (propagated-inputs + (list chicken-srfi-1)) + (home-page "https://wiki.call-cc.org/eggref/5/packrat") + (synopsis "Packrat parsing library") + (description "Packrat parsing is a memoizing, backtracking recursive-descent parsing technique that runs in time and space linear in the size of the input text. The technique was originally discovered by Alexander Birman in 1970 , and Bryan Ford took up the idea for his master's thesis in 2002.") + (license license:expat))) + +(define-public chicken-queues + (package + (name "chicken-queues") + (version "0.1") + (source (origin + (method url-fetch) + (uri (egg-uri "queues" version)) + (sha256 + (base32 + "0i7ywz4p5fhninfgf0fk8h6cdqdp4hdqb76y5cgnzspnmv5qpg26")))) + (build-system chicken-build-system) + (arguments '(#:egg-name "queues")) + (home-page "https://wiki.call-cc.org/eggref/5/queues") + (synopsis "A queue data structure") + (description "This egg provides a single-ended queue data structure.") + (license license:public-domain))) + (define-public chicken-test (package (name "chicken-test") @@ -371,3 +465,5 @@ (define-public chicken-crypto-tools @end itemize @end itemize") (license license:bsd-3)))