Skip to content

Instantly share code, notes, and snippets.

@kornysietsma
Created November 10, 2014 08:09
Show Gist options
  • Save kornysietsma/e1bab9697ea498a2ca58 to your computer and use it in GitHub Desktop.
Save kornysietsma/e1bab9697ea498a2ca58 to your computer and use it in GitHub Desktop.
basic core.async loop with tick, killer channel
(defn irc-loop
"core.async based main loop" [config]
(let [killer (chan)]
(go-loop [data config]
(when data
(println "running")
(alt!
killer ([reason] (println "killed because:" reason))
(timeout 1000) (do (println "tick!")
(recur data)))))
killer))
(async/put! l "die")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment