More work on efficiency
This commit is contained in:
parent
1120cb42e8
commit
c96142a973
|
@ -8,10 +8,11 @@
|
||||||
"build-signature-timestamp" "unset"
|
"build-signature-timestamp" "unset"
|
||||||
"Implementation-Version" "unset"
|
"Implementation-Version" "unset"
|
||||||
}
|
}
|
||||||
|
:jvm-opts ["-Xmx2g"]
|
||||||
:license {:name "GNU General Public License v2"
|
:license {:name "GNU General Public License v2"
|
||||||
:url "http://www.gnu.org/licenses/gpl-2.0.html"}
|
:url "http://www.gnu.org/licenses/gpl-2.0.html"}
|
||||||
:plugins [[lein-marginalia "0.7.1"]]
|
:plugins [[lein-marginalia "0.7.1"]
|
||||||
|
[lein-gorilla "0.3.2"]]
|
||||||
:dependencies [[org.clojure/clojure "1.5.1"]
|
:dependencies [[org.clojure/clojure "1.5.1"]
|
||||||
[org.clojure/math.combinatorics "0.0.7"]
|
[org.clojure/math.combinatorics "0.0.7"]
|
||||||
[org.clojure/tools.trace "0.7.8"]
|
[org.clojure/tools.trace "0.7.8"]
|
||||||
|
|
|
@ -97,7 +97,7 @@
|
||||||
(let [state {:world (transform-world world init-rules) :rules rules}]
|
(let [state {:world (transform-world world init-rules) :rules rules}]
|
||||||
(:world
|
(:world
|
||||||
(last
|
(last
|
||||||
(do-all
|
(doall
|
||||||
(take generations
|
(take generations
|
||||||
(iterate transform-world-state state)))))))
|
(iterate transform-world-state state)))))))
|
||||||
|
|
||||||
|
@ -110,4 +110,11 @@
|
||||||
(ref-set r (transform-world (deref r) rules))))
|
(ref-set r (transform-world (deref r) rules))))
|
||||||
(deref r)))
|
(deref r)))
|
||||||
|
|
||||||
|
(defn run-world3
|
||||||
|
[world init-rules rules generations]
|
||||||
|
(reduce (fn [world _iteration]
|
||||||
|
(transform-world world rules))
|
||||||
|
(transform-world world init-rules)
|
||||||
|
(range generations)))
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue