Thanks Tom, addressing some of your points below: - No criticism of the design choices, but the resolver functions in the > tutorial are a bit busy at a glance, especially since they are responsible > for the wrapping w/ mfd/future and d2q/result-cell. I suppose some helper > functions/macros could make that look cleaner. >
I'm a bit reluctant to do that - I'm afraid it may make the code a bit too 'magical'. In my experience, you don't write Resolver Functions very often in practice - instead, you make a few very generic factories for Resolver Functions (like this one <https://github.com/vvvvalvalval/d2q-examples/blob/31135a9114b3f7f5377f9ae234780257d23b16a3/src/d2q_examples/sql.clj#L144> in the SQL example) and the occasional specific Resolver Function (like this one <https://github.com/vvvvalvalval/d2q-examples/blob/31135a9114b3f7f5377f9ae234780257d23b16a3/src/d2q_examples/sql.clj#L296>, also in the SQL example), and you use helpers like middlewares to make writing these Resolver Functions easier. > I also think namespacing the d2q keywords would make it easier to scan > The rationale for that is to be able to use Clojure Records for efficiency, and also friendliness to other client languages than Clojure. But, hey, don't get me started <https://clojureverse.org/t/should-we-really-use-clojures-syntax-for-namespaced-keys/1516> on that :) > . > - I'd put query expressiveness and real-world examples (authorization, > more complex schemas, etc) as tied for most important future work. > Thanks, regarding real-world examples, have you seen the d2q-examples repo? https://github.com/vvvvalvalval/d2q-examples <https://github.com/vvvvalvalval/d2q-examples> > > I'm eager to see where you take this library. > > On Thursday, October 25, 2018 at 4:45:57 AM UTC-4, Val Waeselynck wrote: >> >> I'm happy to release d2q <https://github.com/vvvvalvalval/d2q>, a >> library for implementing graph-pulling server backends, playing in the same >> space as Lacinia <https://github.com/walmartlabs/lacinia>or Pathom >> <https://github.com/wilkerlucio/pathom>, with an emphasis on simplicity, >> generality and performance: >> >> https://github.com/vvvvalvalval/d2q >> >> This library has been used internally on a previous project for months, >> I've just removed the application-specific parts and added documentation. >> >> Before developing this any further, I'm now looking for feedback: >> >> - >> >> Do you find the value proposition clear and appealing? >> - >> >> Any criticism of the design choices? >> - >> >> I see many potential directions for future development, which are >> important to you? (enhance query expressiveness with new features / >> better >> docs / add specs / integration with GraphQL or Om.Next / more helpers for >> integrating data sources) >> >> Cheers, >> > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.