Auto-análise da Wolfram Language
A Wolfram Knowledgebase contém não só informações sobre entidades externas, mas também informações detalhadas sobre própria Wolfram Language. Este conhecimento pode ser usado para explorar a estrutura (e evolução) da linguagem. Pode também ajudar na descoberta de recursos de interesse. Aqui, as classes de entidade definidas implicitamente são usados para identificar símbolos da Wolfram Language que satisfazem determinados critérios de interesse.
Use uma classe implicitamente definida para identificar símbolos introduzidos na versão 11.
EntityList[
EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] //
Take[#, 20] &
Extraia símbolos adicionados na versão 10 e modificado na versão 11.
EntityList[EntityClass["WolframLanguageSymbol",
{"VersionIntroduced" -> Interval[{10, 10.4}],
"VersionsModified" -> ContainsAny[{11}]}]]
Encontre símbolos nomeados após Carl Friedrich Gauss.
EntityList[
EntityClass[
"WolframLanguageSymbol", {"EponymousPeople" ->
ContainsAny[{Entity["Person", "CarlFriedrichGauss::4vctc"]}]}]]
Encontre símbolos gráficos introduzidos nas versões do Mathematica 8 até 11.
EntityList[EntityClass["WolframLanguageSymbol", {
"FunctionalityAreas" -> ContainsAny[{"GraphicsPrimitiveSymbols"}],
"VersionIntroduced" -> Interval[{8, 11}]
}]]
Encontre os 10 símbolos mais usados (em todo corpora) usando um qualificador EntityProperty combinado com uma classe de entidade definida implicitamente.
EntityClass["WolframLanguageSymbol",
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}] -> TakeLargest[10]]
Veja o conteúdo da classe de entidade implícita formatada resultante clicando no [+].
Resolva a classe de entidades em membros constituintes usando EntityList.
EntityClass["WolframLanguageSymbol",
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}] -> TakeLargest[10]];
EntityList[%]
Extraia as frequências de uso.
EntityList[
EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] //
Take[#, 20] &;
EntityList[%];
top10 = EntityValue[%,
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}], "EntityAssociation"]
Faça um gráfico de pizza das frequências de uso destes símbolos.