Mercurial > rlm
annotate src/rlm/web_stuff.clj @ 0:78a630e650d2
initial import
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Tue, 18 Oct 2011 00:57:08 -0700 |
parents | |
children |
rev | line source |
---|---|
rlm@0 | 1 (ns rlm.web-stuff) |
rlm@0 | 2 |
rlm@0 | 3 |
rlm@0 | 4 ;;(from http://www.mail-archive.com/clojure@googlegroups.com/msg31123.html |
rlm@0 | 5 (defn convolve [ns ms] |
rlm@0 | 6 (let [ns (vec ns), ms (vec ms), |
rlm@0 | 7 count-ns (count ns), count-ms (count ms)] |
rlm@0 | 8 (loop [n 0, |
rlm@0 | 9 y (transient (vec (repeat (dec (+ count-ns count-ms)) 0)))] |
rlm@0 | 10 (if (= n count-ns) (persistent! y) |
rlm@0 | 11 (recur (inc n) |
rlm@0 | 12 (loop [m 0, y y] |
rlm@0 | 13 (if (= m count-ms) y |
rlm@0 | 14 (let [n+m (+ n m)] |
rlm@0 | 15 (recur (inc m) (assoc! y n+m |
rlm@0 | 16 (+ (y n+m) (* (ns n) (ms |
rlm@0 | 17 m)))))))))))));;) |
rlm@0 | 18 |
rlm@0 | 19 |