Skip to content

Instantly share code, notes, and snippets.

@not-much-io
Created April 11, 2015 20:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save not-much-io/f62b4cab7239c7a67ae4 to your computer and use it in GitHub Desktop.
Save not-much-io/f62b4cab7239c7a67ae4 to your computer and use it in GitHub Desktop.
(defn walk-chain
[prefix chain results]
(let [suffixes (get chain prefix)]
(if (empty? suffixes)
results
(let [suffix (first (shuffle suffixes))
new-prefix [(last prefix) suffix]
results-with-spaces (chain->text results)
results-char-count (count results-with-spaces)
suffix-char-count (inc (count suffix))
new-results-char-count (+ results-char-count suffix-char-count)]
(if (>= new-results-char-count 140)
results
(recur new-prefix chain (conj results suffix)))))))
;VS
(defn walk-chain
[prefix chain results]
(let [suffixes (get chain prefix)]
(if (empty? suffixes)
results
(let [suffix (first (shuffle suffixes))
new-prefix [(last prefix) suffix]
results-with-spaces (chain->text results)
results-char-count (count results-with-spaces)
suffix-char-count (inc (count suffix))
new-results-char-count (+ results-char-count suffix-char-count)]
(if (>= new-results-char-count 140)
results
(recur new-prefix chain (conj results suffix)))))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment