diff options
author | Pierre Neidhardt <ambrevar@gmail.com> | 2018-08-24 11:19:24 +0200 |
---|---|---|
committer | Pierre Neidhardt <mail@ambrevar.xyz> | 2018-10-19 17:54:10 +0200 |
commit | ef091e91552dc849dcf454334449045333af9811 (patch) | |
tree | 18750c46aa453ffcc44afad2d8043bde9fc0a2dd | |
parent | 2d418bfa39149df75b3975ad677d3c9b696d1954 (diff) | |
download | guix-ef091e91552dc849dcf454334449045333af9811.tar.gz |
gnu: Add cl-yacc.
* gnu/packages/lisp.scm (cl-cl-yacc, ecl-cl-yacc, sbcl-cl-yacc): New variables.
-rw-r--r-- | gnu/packages/lisp.scm | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index f5c0b90946..d9a2cce260 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -1675,3 +1675,38 @@ GNU libiconv, but completely written in Common Lisp.") (define-public ecl-babel (sbcl-package->ecl-package sbcl-babel)) + +(define-public sbcl-cl-yacc + (package + (name "sbcl-cl-yacc") + (version "0.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jech/cl-yacc") + (commit (string-append "cl-yacc-" version)))) + (sha256 + (base32 + "16946pzf8vvadnyfayvj8rbh4zjzw90h0azz2qk1mxrvhh5wklib")) + (file-name (string-append "cl-yacc-" version "-checkout")))) + (build-system asdf-build-system/sbcl) + (arguments + `(#:asd-file "yacc.asd" + #:asd-system-name "yacc")) + (synopsis "LALR(1) parser generator for Common Lisp, similar in spirit to Yacc") + (description + "CL-Yacc is a LALR(1) parser generator for Common Lisp, similar in spirit +to AT&T Yacc, Berkeley Yacc, GNU Bison, Zebu, lalr.cl or lalr.scm. + +CL-Yacc uses the algorithm due to Aho and Ullman, which is the one also used +by AT&T Yacc, Berkeley Yacc and Zebu. It does not use the faster algorithm due +to DeRemer and Pennello, which is used by Bison and lalr.scm (not lalr.cl).") + (home-page "https://www.irif.fr/~jch//software/cl-yacc/") + (license license:expat))) + +(define-public cl-yacc + (sbcl-package->cl-source-package sbcl-cl-yacc)) + +(define-public ecl-cl-yacc + (sbcl-package->ecl-package sbcl-cl-yacc)) |