That clojureatlas is not only useful/interesting, but also very cool!!!

Thanks for the pointer, and I hope you will find time to finish the 1.3 
ontology "soon".

Wonder if you could enhance your ontology with enough info to generate a graph 
similar to mine automagically… that could be a nice add-on - kind of an 
alternative, different view into the clojure space: given a set of 
entities/types, show graphically the functions that take an instance of one to 
return another, or create/change another as a side-effect.

(if only I could have that special live-moving-turning-bouncy effect in my 
graph… which looks incredibaly dull now ;-) )

-Frank.


On Mar 1, 2012, at 6:04 PM, Chas Emerick wrote:

> This looks good.  I can sympathize with the concern, and with the process of 
> developing a way to visualize these relationships.  I created this last year, 
> an experimental interactive visualization of Clojure and its standard library:
> 
> http://www.clojureatlas.com
> 
> Here's a direct guest link focused on `name`, which is a relevant jumping-off 
> point given your interest here:
> 
> http://www.clojureatlas.com/org.clojure:clojure:1.2.0?guest=Y#clojure.core/name
> 
> (Hint: hold down option/alt while hovering over nodes to get their info 
> bubbles to show up without clicking on them or their `i` icons.)
> 
> FYI, the Atlas is Clojure 1.2-only still.  Now that the book is done, I'm 
> (finally) getting back to it and am in the process of building out the 1.3 
> ontology and reworking the visualization itself a fair bit.
> 
> I hope you find this useful / interesting.
> 
> Cheers,
> 
> - Chas
> 
> On Mar 1, 2012, at 7:14 PM, Frank Siebenlist wrote:
> 
>> It is my experience that the way how these fundamental Clojure entities, 
>> like Strings, Symbols, Keywords, Vars, NS, and Type/Class, are related, is 
>> not so easy to figure out. This is not so much about programming Clojure, 
>> but more about getting a better feel how the language is held together one 
>> level below.
>> 
>> I've created this graph that visually shows what core-functions will give 
>> you a var from a symb, a str from a ns, etc.:
>> 
>> "https://github.com/franks42/kitjensink/wiki/Symbs,-Vars,-NSs,-and-such";
>> 
>> It's still work in progress, but compiling the info for this picture was 
>> already very therapeutic and enlightning.
>> 
>> Any comments or suggestions how to improve are most welcome.
>> 
>> ---
>> 
>> One part that added to my confusion about how these different types are 
>> related, is the fact that the function signature and documentation is 
>> sometimes unclear and feels inconsistent. For example, different 
>> functions/macros let you pass a namespace as a string, a symbol-name, a 
>> quoted-symbol or a ns-instance, or some (arbitrary) combination. Sometimes a 
>> "name" refers to a symbol, sometimes a string, both in docs and in 
>> implementation… I often find myself getting exceptions thrown because I know 
>> a ns is expected, but I "guessed" wrongly about which type of ns-identifier 
>> that particular function demanded. 
>> Is that a common experience? 
>> Is that "by design"? (not being facetious - sometimes you want to throw 
>> exceptions if the wrong type is presented, or implementing all possible 
>> function signatures that would support an ns passed as 
>> string/symbol/instance simply adds too much additional testing).
>> 
>> Regards, FrankS.
>> 
>> -- 
>> 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 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 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

Reply via email to