5

Here's a word cloud tally of the ~5k System names split at camel humps, with the long tail cropped.

What resources are available to organize these terms using the new Entity functionality? Applications might include:

  • Retrieve related objects Select[MatchQ[{___, "Graph"}]] exceptions to camel hump model include: HighlightGraph is not a type of graph, HermiteH should be grouped with Polynomial entity. Is there a method to crowd-source tagging and linking? Or even automate discovery of such links (eg from documentation).
  • Tree or graph visualization of related symbols.
  • Highlight undocumented symbols.
  • Compare Attributes.

EDIT:

By request, code to generate the word cloud. Note that I'm using my more compact method rather than Aisamu's foolproof, b/c they give basically the same result mod a few symbols.

names[in] = Names["System`*"] // Select[StringLength[#] > 1 &] ;

humpCharacters = 
  Flatten@{CharacterRange["A", "Z"], CharacterRange["0", "9"]}; 

names[data] = 
  names[in] // 
    AssociationMap[
     StringSplit[#, 
        c : humpCharacters ~~ 
          rest : Except[Append[humpCharacters, "$"]] .. :> 
         c <> rest] & /* Select[# != "" &]] // Dataset;

names[data][Catenate /* Tally /* SortBy[Last] /* Reverse][
  Map[Style[First[#], FontSize ->  (Last[#]/3 + 8)]^
    Style[Last[#], Red] &]] // Normal

enter image description here

alancalvitti
  • 15,143
  • 3
  • 27
  • 92

0 Answers0