This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-07-12
Channels
- # aleph (10)
- # beginners (79)
- # boot (81)
- # chestnut (3)
- # cider (9)
- # cljs-dev (336)
- # cljsrn (17)
- # clojure (121)
- # clojure-boston (1)
- # clojure-italy (4)
- # clojure-nl (1)
- # clojure-russia (218)
- # clojure-spec (32)
- # clojure-uk (98)
- # clojurescript (109)
- # cloverage (1)
- # core-async (5)
- # cursive (17)
- # datascript (15)
- # datomic (38)
- # editors (4)
- # emacs (6)
- # graphql (1)
- # hoplon (140)
- # instaparse (1)
- # jobs (2)
- # klipse (1)
- # leiningen (4)
- # lumo (2)
- # mount (103)
- # off-topic (3)
- # om (8)
- # onyx (19)
- # parinfer (32)
- # pedestal (3)
- # precept (32)
- # re-frame (33)
- # reagent (24)
- # remote-jobs (11)
- # rum (1)
- # spacemacs (1)
- # specter (37)
- # unrepl (4)
- # untangled (43)
- # vim (11)
Hi, I am new to datascript. Can anybody tell me what the difference between transact
and transact!
is? They both seem to modify the passed atom Oo
@mrchance transact!
is the main one. transact
was added to be compatible with Datomic API. It’ll additionally wrap transaction result into the future
I use it to store an AST for my language, and was worried about how difficult it might be to get the tree in there... It's
(defn parse-tree->db [tree]
(doto (d/create-conn schema)
(d/transact! [tree])))
after some very minor modifications to the parser 😂@tonsky out of curiosity, how complex is it to implement a system like Datascript? (specifically executing Datalog queries)
I'm planning to use ds server-side as db (implementing durability now - may be a more generic lib some day). Anyone any experiences with ds server-side, or benchmarks, or ideas for benchmarks, or ... ?
@hmaurer well DS itself is pretty straightforward. Indexes required me to implement persistent B-Tree for clojure, but that’s almost straight from the books. Query engine is also pretty straightforward, except for the rules which are trickier. But if you want all that to run fast then it requires some work, yes
this might be of interest to you http://tonsky.me/blog/datascript-internals/