Sha256: ccf64f653e8fb479a1b432362618859fa50b442ad6b637b394fc86c30a572f39

Contents?: true

Size: 377 Bytes

Versions: 396

Compression:

Stored size: 377 Bytes

Contents

(defmodule strain
  (export (keep 2)
          (discard 2)))

(defun keep
  ([_f []] ())
  ([f (cons h t)]
   (if (funcall f h)
     (cons h (keep f t))
     (keep f t))))

;;; Could also be written as a list comprehension:
;;
;; (defun keep' (f lst)
;;   (lc ((<- x lst)
;;        (funcall f x))
;;     x))

(defun discard (f lst) (keep (lambda (x) (not (funcall f x))) lst))

Version data entries

396 entries across 396 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.179 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.178 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.177 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.176 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.175 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.174 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.173 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.172 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.171 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.170 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.169 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.167 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.166 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.165 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.164 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.163 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.162 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.161 tracks/lfe/exercises/strain/src/example.lfe
trackler-2.2.1.160 tracks/lfe/exercises/strain/src/example.lfe