Sha256: 9d997753c32f7c5bfee49bf3b01ffd64f89ace276a978c8ce6210dad7a943002

Contents?: true

Size: 410 Bytes

Versions: 396

Compression:

Stored size: 410 Bytes

Contents

(defpackage #:strain
  (:use #:common-lisp)
  (:export #:keep #:discard))

(in-package #:strain)

(defun keep (pred seq)
  (labels
      ((recurse (s r)
         (cond ((null s) (reverse r))
               ((funcall pred (car s))
                (recurse (cdr s) (cons (car s) r)))
               (t (recurse (cdr s) r)))))
    (recurse seq (list))))

(defun discard (pred seq)
  (keep (complement pred) seq))

Version data entries

396 entries across 396 versions & 1 rubygems

Version Path
trackler-2.2.1.159 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.158 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.157 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.156 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.155 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.154 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.153 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.152 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.151 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.150 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.149 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.148 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.147 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.146 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.145 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.144 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.143 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.142 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.141 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.140 tracks/common-lisp/exercises/strain/example.lisp