promise list

Post on 24-Jun-2015

94 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

PROMISE LISTS

(let [[reader writer] (open-plist)])

(append! writer (promise "puppies"))

(done

(first reader)

#(log "first: " %))

(done

(first reader)

!#(log "first (again): " %))

(done

!(nth reader 1)

!#(log "second: " %))

(append! writer (promise "ducklings"))

(close! writer)

(done

! (nth reader 2)

! #(log "after close nil?: " (nil? %)))

(done

!(first (closed-plist "owlet"))

!#(log "closed plist: " %))

(done

  (->> reader       (map (fmap #(str "baby " %)))       rest       first)

  #(log "mapped: " %))

(done

!(reduce (fmap +)!!(r/map (fmap inc)!!!(closed-plist 1 2 3 4)))

   #(log "reduced: " %))

(done

!(first!!(mapd* inc!!!(closed-plist 1 2 3 4)))

!#(log "mapd*: " %))

(done

  (reduce (fmap conj) (promise [])          (for-plist [a (closed-plist 1 2 3)                      b (closed-plist 4 5 6)                      v (closed-plist a b)]           v))

  (comp log clj->js))

top related