Wolfram Language Self-Analysis
The Wolfram Knowledgebase contains not only information about external entities, but also detailed particulars about the Wolfram Language itself. This knowledge can be used to explore the structure (and evolution) of the language. It can also aid in the discovery of functionality of interest. Here, implicitly defined entity classes are used to identify Wolfram Language symbols satisfying certain criteria of interest.
Use an implicitly defined class to identify symbols introduced in Version 11.
![Click for copyable input](assets.en/wolfram-language-self-analysis/In_61.png)
EntityList[
EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] //
Take[#, 20] &
![](assets.en/wolfram-language-self-analysis/O_46.png)
Extract symbols added in Version 10 and modified in Version 11.
![Click for copyable input](assets.en/wolfram-language-self-analysis/In_62.png)
EntityList[EntityClass["WolframLanguageSymbol",
{"VersionIntroduced" -> Interval[{10, 10.4}],
"VersionsModified" -> ContainsAny[{11}]}]]
![](assets.en/wolfram-language-self-analysis/O_47.png)
Find symbols named after Carl Friedrich Gauss.
![Click for copyable input](assets.en/wolfram-language-self-analysis/In_63.png)
EntityList[
EntityClass[
"WolframLanguageSymbol", {"EponymousPeople" ->
ContainsAny[{Entity["Person", "CarlFriedrichGauss::4vctc"]}]}]]
![](assets.en/wolfram-language-self-analysis/O_48.png)
Find graphics symbols introduced in Mathematica versions 8 to 11.
![Click for copyable input](assets.en/wolfram-language-self-analysis/In_64.png)
EntityList[EntityClass["WolframLanguageSymbol", {
"FunctionalityAreas" -> ContainsAny[{"GraphicsPrimitiveSymbols"}],
"VersionIntroduced" -> Interval[{8, 11}]
}]]
![](assets.en/wolfram-language-self-analysis/O_49.png)
Find the 10 most-used symbols (in all corpora) using an EntityProperty qualifier combined with an implicitly defined entity class.
![Click for copyable input](assets.en/wolfram-language-self-analysis/In_65.png)
EntityClass["WolframLanguageSymbol",
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}] -> TakeLargest[10]]
![](assets.en/wolfram-language-self-analysis/O_50.png)
See the contents of the resulting formatted implicit entity class by clicking the [+].
![](assets.en/wolfram-language-self-analysis/O_51.png)
Resolve the entity class into constituent members using EntityList.
![Click for copyable input](assets.en/wolfram-language-self-analysis/In_66.png)
EntityClass["WolframLanguageSymbol",
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}] -> TakeLargest[10]];
EntityList[%]
![](assets.en/wolfram-language-self-analysis/O_52.png)
Extract usage frequencies.
![Click for copyable input](assets.en/wolfram-language-self-analysis/In_67.png)
EntityList[
EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] //
Take[#, 20] &;
EntityList[%];
top10 = EntityValue[%,
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}], "EntityAssociation"]
![](assets.en/wolfram-language-self-analysis/O_53.png)
Make a pie chart of usage frequencies for these symbols.
![](assets.en/wolfram-language-self-analysis/O_54.png)