# Wolfram Mathematica

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

In:= ```EntityList[ EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] // Take[#, 20] &```
Out= Extract symbols added in Version 10 and modified in Version 11.

In:= ```EntityList[EntityClass["WolframLanguageSymbol", {"VersionIntroduced" -> Interval[{10, 10.4}], "VersionsModified" -> ContainsAny[{11}]}]]```
Out= Find symbols named after Carl Friedrich Gauss.

In:= ```EntityList[ EntityClass[ "WolframLanguageSymbol", {"EponymousPeople" -> ContainsAny[{Entity["Person", "CarlFriedrichGauss::4vctc"]}]}]]```
Out= Find graphics symbols introduced in Mathematica versions 8 to 11.

In:= ```EntityList[EntityClass["WolframLanguageSymbol", { "FunctionalityAreas" -> ContainsAny[{"GraphicsPrimitiveSymbols"}], "VersionIntroduced" -> Interval[{8, 11}] }]]```
Out= Find the 10 most-used symbols (in all corpora) using an EntityProperty qualifier combined with an implicitly defined entity class.

In:= ```EntityClass["WolframLanguageSymbol", EntityProperty["WolframLanguageSymbol", "Frequencies", {"Corpus" -> "All"}] -> TakeLargest]```
Out= See the contents of the resulting formatted implicit entity class by clicking the [+].

Out= Resolve the entity class into constituent members using EntityList.

In:= ```EntityClass["WolframLanguageSymbol", EntityProperty["WolframLanguageSymbol", "Frequencies", {"Corpus" -> "All"}] -> TakeLargest]; EntityList[%]```
Out= Extract usage frequencies.

In:= ```EntityList[ EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] // Take[#, 20] &; EntityList[%]; top10 = EntityValue[%, EntityProperty["WolframLanguageSymbol", "Frequencies", {"Corpus" -> "All"}], "EntityAssociation"]```
Out= Make a pie chart of usage frequencies for these symbols.

show complete Wolfram Language input
In:= ```PieChart[ Append[top10, "others" -> 1 - Total[Values[top10]]], LabelingFunction -> Function[Row[{NumberForm[100 #, {3, 1}], "%"}]], ChartLegends -> Automatic, ChartStyle -> "Rainbow"]```
Out= 