Compare commits

..

9 Commits

4 changed files with 17 additions and 11 deletions

View File

@ -30,13 +30,20 @@ jobs:
# Runs a set of commands using the runners shell
- name: setup deps
run: |
nix profile install nixpkgs\#sbcl
set -x
cd
nix profile install nixpkgs\#sbcl
command -v sbcl || exit 36
wget 'https://beta.quicklisp.org/quicklisp.lisp'
[[ -f ./quicklisp.lisp ]] || exit 37
sbcl --eval '(require :uiop)' \
--load quicklisp.lisp \
--eval '(handler-case (progn (error "fail!") (quicklisp-quickstart:install)) (error () (uiop:quit 40)))' \
--eval '(handler-case (quicklisp-quickstart:install) (error () (uiop:quit 38)))' \
--quit
[[ -f "$HOME"/quicklisp/setup.lisp ]] || exit 39
- name: run tests
run: |

View File

@ -6,10 +6,9 @@
"composable functions, modeled on lenses and"
"transducers")
:author "Edward Langley <el-cl@elangley.org>"
:license "MIT"
:license "Apache v2"
:depends-on (:cl-ppcre
:alexandria
:serapeum)
:alexandria)
:serial t
:components ((:file "package")
(:file "optics")
@ -19,9 +18,10 @@
:description #.(format nil "~@{~a~^ ~}"
"A collection of transducers to reduce stream-manipulation overhead")
:author "Edward Langley <el-cl@elangley.org>"
:license "MIT"
:license "Apache v2"
:depends-on (:data-lens
:alexandria)
:alexandria
:serapeum)
:serial t
:in-order-to ((test-op (test-op :data-lens/transducers/test)))
:components ((:file "package")
@ -32,7 +32,7 @@
(asdf:defsystem #:data-lens/transducers/test
:description "tests for the transducers"
:author "Edward Langley <el-cl@elangley.org>"
:license "MIT"
:license "Apache v2"
:depends-on (:data-lens/beta/transducers
:fiveam)
:serial t

View File

@ -151,7 +151,7 @@ contain the new value at the location focused by the lens."
(fmap (lambda (new)
(cons (cons key new)
alist))
(funcall cb (serapeum:assocdr key alist))))))
(funcall cb (cdr (assoc key alist)))))))
(defun make-alist-lens (key)
"A lens for updating a alist, discarding previous values"
@ -162,7 +162,7 @@ contain the new value at the location focused by the lens."
alist)
:key #'car
:from-end t))
(funcall cb (serapeum:assocdr key alist))))))
(funcall cb (cdr (assoc key alist)))))))
(defun make-list-lens (index)
"A lens for updating a sequence"

View File

@ -11,7 +11,6 @@
(defpackage :data-lens
(:use :cl)
(:import-from #:serapeum #:op #:defalias)
(:export #:regex-match #:include #:exclude #:pick #:key-transform
#:combine #:derive #:cumsum #:over #:on #:shortcut
#:defun-ct #:key #:extract-key #:element #:let-fn #:juxt