Devin,

On Wednesday, June 11, 2014 6:25:13 PM UTC+2, Devin Walters (devn) wrote:
>
> A few nitpicks:
>

Thanks for your feedback; I really appreciate any opinion or suggestion, 
especially related to the UI
 

>  
> - I find the usability to be a bit difficult in some places. For instance, 
> search results and specific function pages feel kind of cluttered.
>

I understand that. I was trying to cram as much info as possible, and I was 
too lazy to write some basic pagination facility. I think that the problem 
is especially relevant when you have a lot of results. 
 

> - What does "Some other projects..." mean? Are they related to the 
> function I'm viewing, or are they just random projects?
>

Totally random. I was trying to enable/facilitate some serendipitous 
exploration.
 

> - It's not clear what kind of interaction is being encouraged by adding 
> the Google+ comments box. Maybe a slightly longer up-front explanation 
> about how you envision people using the site would be useful to people 
> trying it out?
>

I agree with you, comments are not well-integrated and not really usable 
right now, and it's not clear if (or how) they fit in the current iteration 
of the project.
I was inspired by clojuredocs.org commenting system, which I think is 
really useful, but I don't have a clear answer right now on how it's 
possible to bootstrap some kind of community activity around CrossClj. 
Maybe it's a viable and good idea, maybe not.
 

>
> Finally, maybe you already explained this somewhere, so forgive me if I'm 
> adding noise, but are you using tools.analyze, codeq, etc. to do this? If 
> not, I'd be interested in hearing more about how you built it.
>

It's not much complicated: for each namespace in each project, 
tools.analyzer.* produces an AST that resolves var occurrences (definitions 
and applications) in the source code into their fully namespace-qualified 
vars; pomegranate resolves namespaces into their fully qualified artifacts 
(in terms of maven coordinates). The combination of the two generates a 
coherent addressing space that is used to generate the hyperlinks. Actual 
links are positioned in the source code using the metadata in the AST.
Lucene is used to maintain the inverse index (ie. var definition -> var 
application).
Of course namespaces need to be macroexpanded and fully evaluated, which 
causes a lot of funny side effects ;-) 

Hope this helps, feel free to ask for more details

Francesco



 

>
> Thanks for building this. I look forward to playing around with it.
>
> Cheers,
> -- 
> Devin Walters
>
> On Wednesday, June 11, 2014 at 10:53 AM, Mike Haney wrote:
>
> Very cool. Is there a public REST api?
>
> I ask because I'm thinking a lighttable plugin that uses this to search 
> for dependencies and automatically add them to project.clj would be pretty 
> easy to write and quite useful. Yes, I could use clojars directly, but this 
> would allow more options in the future.
>
> -- 
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clo...@googlegroups.com <javascript:>
> Note that posts from new members are moderated - please be patient with 
> your first post.
> To unsubscribe from this group, send email to
> clojure+u...@googlegroups.com <javascript:>
> 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+u...@googlegroups.com <javascript:>.
> For more options, visit https://groups.google.com/d/optout.
>
>  
>  

-- 
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