blob: c9e6e8b60578a77f472a5d6b9a23ced6d3ae2f9b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
(defun get-file-lines (name)
(uiop:read-file-lines name))
(defun partial (func &rest args1)
(lambda (&rest args2)
(apply func (append args1 args2))))
(defun compose (a b)
(lambda (&rest args)
(funcall a (apply b args))))
(defun filter (func l)
(loop :for i :in l :when (funcall func i) :collect i))
(defun trim (input)
(string-trim '(#\Space #\Newline #\Backspace #\Tab
#\Linefeed #\Page #\Return #\Rubout) input))
(defun fold-left (reducer initial list)
(loop for fold = initial then (funcall reducer fold element)
for element in list
finally (return fold)))
|