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.119 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.118 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.117 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.116 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.115 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.114 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.113 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.111 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.110 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.109 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.108 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.107 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.106 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.105 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.104 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.103 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.102 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.101 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.100 tracks/common-lisp/exercises/strain/example.lisp
trackler-2.2.1.99 tracks/common-lisp/exercises/strain/example.lisp