有没有一种简单的方法可以查看函数(例如来自Statistics.jl
包的quantile
函数)所做的确切计算?这里的目标仅是了解该特定函数所执行的计算,而不是编辑整个包。
非常感谢。
有一个名为Base.functionloc
的函数,可以帮助你找到方法定义的文件和行号;但是你需要指定特定类型的方法作为元组参数:
julia> functionloc(cos, (Float64,))
("/usr/local/julia-1.0.0/bin/../share/julia/base/special/trig.jl", 100)
julia> functionloc(cos)
ERROR: function has multiple methods; please specify a type signature
...
@functionloc
的宏,在许多情况下使用起来可能更容易,因为您可以直接使用函数调用语法:@functionloc cos(3.14)
。无论您在代码中有什么函数调用,都可以在它之前插入@functionloc
。 - Sundar R@less
宏。
计算函数或宏调用的参数,确定其类型,并在结果表达式上调用less函数。
@edit
宏,它会在你最喜欢的编辑器中打开源代码(由 EDITOR
环境变量设置)。我更喜欢这个选项,因为编辑器(在我的情况下是 Vim)通常更易于导航和具有更多功能。 - Sundar R请在在线文档中查找:
https://docs.julialang.org/en/v1/stdlib/Statistics/#Statistics.quantile
并单击函数描述底部的“source”链接。
请注意,像许多基本功能一样,该函数名称用于支持多个数据类型的多个函数。这意味着彻底研究源代码将需要查看多个函数。