Wolfram 语言自我分析
Wolfram Knowledgebase 不仅包含关于外部实体的信息,还含有关于 Wolfram 语言自身的详细信息. 该知识可用于探索语言的构造(及演变). 它还可以帮助探索感兴趣的功能. 在此,我们用隐式定义的实体类来识别满足特定兴趣条件的 Wolfram 语言符号.
使用一个隐式定义的类来识别版本 11 中引入的符号.
In[1]:=

EntityList[
EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] //
Take[#, 20] &
Out[1]=

提取版本 10 中添加并在版本11 中修改的符号.
In[2]:=

EntityList[EntityClass["WolframLanguageSymbol",
{"VersionIntroduced" -> Interval[{10, 10.4}],
"VersionsModified" -> ContainsAny[{11}]}]]
Out[2]=

找出以 Carl Friedrich Gauss 命名的符号.
In[3]:=

EntityList[
EntityClass[
"WolframLanguageSymbol", {"EponymousPeople" ->
ContainsAny[{Entity["Person", "CarlFriedrichGauss::4vctc"]}]}]]
Out[3]=

找出 Mathematica 版本 8 到 11 中引入的图形符号.
In[4]:=

EntityList[EntityClass["WolframLanguageSymbol", {
"FunctionalityAreas" -> ContainsAny[{"GraphicsPrimitiveSymbols"}],
"VersionIntroduced" -> Interval[{8, 11}]
}]]
Out[4]=

使用 EntityProperty 限定,连同一个隐式定义的实体类,找出(全部语料库中)十个最常用的符号.
In[5]:=

EntityClass["WolframLanguageSymbol",
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}] -> TakeLargest[10]]
Out[5]=

通过点击 [+],查看所生成的格式化隐性实体类的内容.
Out[6]=

用 EntityList 将实体类分解为组成成员.
In[7]:=

EntityClass["WolframLanguageSymbol",
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}] -> TakeLargest[10]];
EntityList[%]
Out[7]=

提取使用频度.
In[8]:=

EntityList[
EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] //
Take[#, 20] &;
EntityList[%];
top10 = EntityValue[%,
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}], "EntityAssociation"]
Out[8]=

创建这些符号使用频度的饼图.
显示完整的 Wolfram 语言输入
Out[9]=
