{"action":"created","issue":{"url":"https://api.github.com/repos/tonsky/datascript/issues/82","labels_url":"https://api.github.com/repos/tonsky/datascript/issues/82/labels{/name}","comments_url":"https://api.github.com/repos/tonsky/datascript/issues/82/comments","events_url":"https://api.github.com/repos/tonsky/datascript/issues/82/events","html_url":"https://github.com/tonsky/datascript/pull/82","id":76743397,"number":82,"title":"cljc breakout of DB and FilteredDB structures","user":{"login":"benfleis","id":2185001,"avatar_url":"https://avatars.githubusercontent.com/u/2185001?v=3","gravatar_id":"","url":"https://api.github.com/users/benfleis","html_url":"https://github.com/benfleis","followers_url":"https://api.github.com/users/benfleis/followers","following_url":"https://api.github.com/users/benfleis/following{/other_user}","gists_url":"https://api.github.com/users/benfleis/gists{/gist_id}","starred_url":"https://api.github.com/users/benfleis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benfleis/subscriptions","organizations_url":"https://api.github.com/users/benfleis/orgs","repos_url":"https://api.github.com/users/benfleis/repos","events_url":"https://api.github.com/users/benfleis/events{/privacy}","received_events_url":"https://api.github.com/users/benfleis/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"tonsky","id":285292,"avatar_url":"https://avatars.githubusercontent.com/u/285292?v=3","gravatar_id":"","url":"https://api.github.com/users/tonsky","html_url":"https://github.com/tonsky","followers_url":"https://api.github.com/users/tonsky/followers","following_url":"https://api.github.com/users/tonsky/following{/other_user}","gists_url":"https://api.github.com/users/tonsky/gists{/gist_id}","starred_url":"https://api.github.com/users/tonsky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tonsky/subscriptions","organizations_url":"https://api.github.com/users/tonsky/orgs","repos_url":"https://api.github.com/users/tonsky/repos","events_url":"https://api.github.com/users/tonsky/events{/privacy}","received_events_url":"https://api.github.com/users/tonsky/received_events","type":"User","site_admin":false},"milestone":null,"comments":1,"created_at":"2015-05-15T14:27:00Z","updated_at":"2015-05-15T17:22:02Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/tonsky/datascript/pulls/82","html_url":"https://github.com/tonsky/datascript/pull/82","diff_url":"https://github.com/tonsky/datascript/pull/82.diff","patch_url":"https://github.com/tonsky/datascript/pull/82.patch"},"body":"* couple small fixes to Datom\r\n* uses new defrecord-extendable-* macros to leverage defrecord, but allow overriding builtins\r\n* possible mechanism to combine macros could be copied from prismatic, not yet tried\r\n* DB: previous (and current) versions have `(seq)` support which returns a sequence of the `datoms`, but assoc, etc., will manipulate the DB structure directly. is this what we want? I might suggest removing the specialized seq, count methods until moving completely to the possible sorted-datom-set vision as a whole.\r\n\r\nI will make cleanups in this branch, and once you're down with all of them, merge them into move-to-cljc for a final (singular) clean merge."},"comment":{"url":"https://api.github.com/repos/tonsky/datascript/issues/comments/102462548","html_url":"https://github.com/tonsky/datascript/pull/82#issuecomment-102462548","issue_url":"https://api.github.com/repos/tonsky/datascript/issues/82","id":102462548,"user":{"login":"tonsky","id":285292,"avatar_url":"https://avatars.githubusercontent.com/u/285292?v=3","gravatar_id":"","url":"https://api.github.com/users/tonsky","html_url":"https://github.com/tonsky","followers_url":"https://api.github.com/users/tonsky/followers","following_url":"https://api.github.com/users/tonsky/following{/other_user}","gists_url":"https://api.github.com/users/tonsky/gists{/gist_id}","starred_url":"https://api.github.com/users/tonsky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tonsky/subscriptions","organizations_url":"https://api.github.com/users/tonsky/orgs","repos_url":"https://api.github.com/users/tonsky/repos","events_url":"https://api.github.com/users/tonsky/events{/privacy}","received_events_url":"https://api.github.com/users/tonsky/received_events","type":"User","site_admin":false},"created_at":"2015-05-15T17:22:02Z","updated_at":"2015-05-15T17:22:02Z","body":"Great!\r\n\r\n- `val-at-db`, `assoc-db`: these should be provided by defrecord now\r\n- I now see that you were right about moving `empty-db` to core. I’m sorry, can you do that and drop `empty-db-from-db`?\r\n- We should probably use `hash-ordered-coll` for `hash-db` cljs version (was a bug before). Also I think we can change to `(.-eavt db)` there instead of `(-datoms db :eavt [])`\r\n- Would `(defn ^Boolean` work for cljs? Boolean is java class.\r\n- In clojure version of `defrecord-ext` it’s safe to use field names (e.g. just `eavt` instead of `(.-eavt this)`). I think it’s much cleaner, can you change to that? I’ll see what can be done for CLJS version about that.\r\n\r\nThanks!"}}