This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-05-28
Channels
- # admin-announcements (1)
- # beginners (33)
- # boot (35)
- # braveandtrue (1)
- # cider (6)
- # cljs-dev (59)
- # cljsrn (24)
- # clojure (44)
- # clojure-austin (3)
- # clojure-china (1)
- # clojure-russia (13)
- # clojure-spec (63)
- # clojurescript (71)
- # community-development (1)
- # core-async (2)
- # cursive (6)
- # datomic (1)
- # editors-rus (2)
- # emacs (3)
- # hoplon (47)
- # jobs-discuss (3)
- # keechma (1)
- # lein-figwheel (2)
- # om (38)
- # om-next (4)
- # onyx (2)
- # other-languages (63)
- # parinfer (3)
- # planck (4)
- # re-frame (3)
- # reagent (2)
- # slack-help (4)
- # specter (26)
- # tmp-json-parsing (7)
- # uncomplicate (66)
- # yada (7)
out of curiosity, how was the name (specter) chosen?
inspect, introspect
So at work we use om.next, and I saw under the readme’s future work you mention graphs I’ve not had the time to fully think this out, but I was wondering if you had spent any brain power on graphs, om.next & specter
i can elaborate on what an om.next graph is if you aren’t aware
well I have my own internal specter graph navigators (on top of loom)
trying to get someone from the community to contribute an open-source version
there was someone at clojure west who was really interested but I haven't heard from him since
short summary of om.next graphs?
i only have a vague familiarity
let me grab a snapshot from my app, probably be easier with some real data
btw I gave an example of my specter graph stuff during my clojure west talk: https://youtu.be/VTCy_DkAJGk?t=39m
{:todos [[:todo/by-id 111] [:todo/by-id 222]]
:todo/by-id {111 {:db/id 111 :todo/title [:string/by-id 112]}
222 {:db/id 222 :todo/title [:string/by-id 223]}}
so edges are called idents and take the form [:table-name id]
and we usually want to perform operations like adding/removing a todo to both the :todos
list and to the table :todo/by-id
and editing them in the table, which could itself be an operation that involves modifying a todo’s title which is an ident
anyway i dont know what im looking for as its very new to me, but we end up writing a lot of boilerplate to update this graph
yea, well it's kind of like manipulating a vector if you had to deal with the internal tree structure directly
I think loom internally implements graphs with maps but has a proper graph api that you can use
so take a look at loom then?
I would start there, yea
ok thanks, hadn’t heard of it before
or some sort of API where you do the basic manipulations / queries with a graph-oriented API
be nice to not reinvent the graph
get-node, children, parents, etc.
then when you want to do more sophisticated stuff, you can do something similar like I've done with specter graph navigators