Mercurial > repos > other > SevenLanguagesInSevenWeeks
view 6-Clojure/atomcache.clj @ 103:98be775c533c default tip
An odd "non-determinism" example from StackOverflow
It is clever, but doesn't make much sense as to how it gets its results
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Sun, 14 Jul 2019 13:44:13 +0100 |
parents | eccc649d49a2 |
children |
line wrap: on
line source
(defn create_price_list [] (atom {})) ; We can't use get because it's part of clojure.core (defn get_price [prices name] (@prices name)) (defn set_price ([prices new_price_map] (swap! prices merge new_price_map)) ([prices name price] (swap! prices assoc name price))) (def my_shares (create_price_list)) (set_price my_shares :GW 299) (set_price my_shares :BT 1563) (set_price my_shares :ROYALMAIL 29) (println (get_price my_shares :BT)) (println (get_price my_shares :FOO)) (println my_shares)