As easy as 1, 2, 3!
Updated:
- Aug, 08, 2022 update
config
docs for npm 8+ - Jul 27, 2021 add private scopes
- Jul 22, 2021 add dist tags
- Jun 20, 2021 update for
--access=public
- Sep 07, 2020 update docs for
npm version
;; www.Quanto.ga | |
;; | |
;; cp/upmap is from https://github.com/TheClimateCorporation/claypoole | |
quantataraxia.core> (do | |
(println "MAP:") | |
(println (time (doall (map (fn [x] (Thread/sleep x) x) | |
(range 500 50 -9))))) | |
(println "PMAP:") |
;; Performance of with-local-vars vs. atom vs. volatile vs. unsynchronized-mutable field. | |
(definterface IOObject | |
(setVal [new-val]) | |
(getVal []) | |
(oswap [f]) | |
(oswap [f x]) | |
(oswap [f x y]) | |
(oswap [f x y z])) |
;; I keep forgetting how to do this stuff for some reason, so here goes: | |
(let [c (async/chan 1 (map #(* % 2)))] | |
(async/go | |
(loop [] | |
(when-let [e (async/<! c)] | |
(println "async/go, e:" e) | |
(recur)))) | |
(async/>!! c 1) | |
(async/>!! c 2)) |
(let [f (future | |
(try | |
(Thread/sleep 10000) | |
(catch Throwable e | |
(println e) | |
(println "isInterrupted:" (.isInterrupted (Thread/currentThread))) | |
(println "isAlive:" (.isAlive (Thread/currentThread))) | |
(println "interrupted:" (Thread/interrupted)))))] | |
(Thread/sleep 500) | |
(future-cancel f) |
;; This stuff is pretty useful in many contexts. | |
... | |
(:import (com.google.common.cache CacheBuilder CacheLoader)) | |
... | |
quantataraxia.core> (with (-> (CacheBuilder/newBuilder) | |
(.weakKeys) |