comparison clojure/com/aurellem/run/util.clj @ 335:abd1ca8a25cc

fixed major bug with first-difference which was causing de-sync.
author Robert McIntyre <rlm@mit.edu>
date Sat, 07 Apr 2012 05:42:26 -0500
parents a452deec2882
children 7c89fe478de4
comparison
equal deleted inserted replaced
334:57f4c57d2897 335:abd1ca8a25cc
15 (repeat n [])))) 15 (repeat n []))))
16 16
17 (defn first-difference 17 (defn first-difference
18 [base alt difference-metric [moves root :as script]] 18 [base alt difference-metric [moves root :as script]]
19 (loop [branch-point root 19 (loop [branch-point root
20 actions moves] 20 actions (vec moves)]
21 (let [base-branch (step branch-point base) 21 (let [base-branch (step branch-point base)
22 base-val (difference-metric base-branch) 22 base-val (difference-metric base-branch)
23 alt-branch (step branch-point alt) 23 alt-branch (step branch-point alt)
24 alt-val (difference-metric alt-branch)] 24 alt-val (difference-metric alt-branch)]
25 (if (not= base-val alt-val) 25 (if (not= base-val alt-val)