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.

Reply via email to