据我所知,Mathematica中的一千多个内置重写规则默认填充全局规则表。有没有办法让Mathematica提供这些规则的完整或部分列表?
答案 0 :(得分:11)
最好的方法是找到Wolfram Research的工作。
如果不这样做,我认为对于未完全编译到内核中的内容,您可以恢复大多数规则/定义。看看
Attributes[fn]
其中fn
是您感兴趣的命令。如果它返回
{Protected, ReadProtected}
然后你可以看一下(虽然它通常只是MakeBoxes
(格式化)定义或AutoLoad / Stub类型定义。看看有什么运行
Unprotect[fn];
ClearAttributes[fn, ReadProtected];
??fn
如果它是一个存根,你经常需要运行一个命令加载它的例子。您还必须从面向用户的命令挖掘到后端实现。 最终,你很可能会找到一个编译到内核中的核心命令,你无法看到它的细节。
我之前在tips for creating Graph diagrams中提到了这一点,并在What is in your Mathematica tool bag?中提及了它。
一个很好的例子,在Circular/Angular slider中提到Experimental`AngularSlider[]
提到了一个很好的一口大小且易于理解的代码。我会留给你看看生成的代码。
另一个示例类似于BoxWhiskerChart
,您需要调用它一次才能加载所有代码。然后,您会看到BoxWhiskerChart
继续致电Charting`iBoxWhiskerChart
,您必须取消保护以查看等等...