-
keystore data, w/o the tradeoffs of other nosql databases
-
ACID tx, joins, datalog, simple schema
-
"Facts dont change when you incorporate time"
- SQL db in past, CRUD triggers, history tables
(ns test-app.core | |
(:require [clojure.pprint :refer [pprint]])) | |
(->> java.sql.ResultSet | |
(.getMethods) | |
(map method-sig) | |
(pprint)) |
(ns test-app.core) | |
;; true | |
[(boolean 0) | |
(boolean "false") | |
(boolean '()) | |
;; false | |
(boolean nil) |
(ns test-app.core) | |
(defprotocol Fooable | |
(foo [this f]) | |
(bar [this b])) | |
(deftype FooPrinter [] | |
Fooable | |
(foo [this f] (println "foo: " f)) | |
(bar [this b] (println "bar: " b))) |
(ns test-app.core) | |
(def h (atom (make-hierarchy))) | |
(swap! h derive ::square ::shape) | |
(swap! h derive ::red-square ::square) | |
(def one (isa? @h ::red-square ::shape)) ;; => true |
(ns test-app.core) | |
(def v1 [4 5 6]) | |
(def v2 [1 2 3]) | |
(def m {0 7 1 8}) | |
(def get* (fn [k a] (get a k))) | |
[(min-key first v1 v2) | |
(max-key (partial get* 0) v1 v2 m)] |
(ns testapp.core) | |
(def p (promise)) | |
(.start (java.lang.Thread. | |
(fn [] | |
(Thread/sleep 2000) | |
(deliver p "foozle") | |
(println "promise set")))) |
(ns test-app.bar) | |
(defmulti do-it :foo) | |
(defmethod do-it "foo" | |
[m] | |
"foo'd it") | |
(defmethod do-it "bar" | |
[m] |
(ns test-app.foo | |
(:require [taoensso.timbre.profiling :as p] | |
[datomic.api :as d])) | |
;; GOALS | |
;; * perf test both approaches | |
;; * compare size/complexity of code for boath approaches | |
;; Properties from input file. Only properties w/ even :id have been selected. | |
(def props-from-file |