自然对数底数e废弃掉了,但是我依然在mathconstants.jl找到它的踪影

Julia 内置的数学常量与 Unicode 字符输入 继续讨论:
自然对数底数e废弃掉了,但是我依然在JuliaPro-1.2.0-1\Julia-1.2.0\share\julia\base\mathconstants.jl里发现了它。
但是e以及其它一些数学常量现在依然是不可以使用的,并且我也无法把MathConstants.jl和我的工程一同构建否则输出错误信息WARNING: replacing module MathConstants.显示这个模块已经被加载了,难道加载的是另一个文件里的MathConstants模块吗?


还有一个附带的小问题:是否有什么办法能快捷找到常量定义的位置,我知道有一个功能类似的函数methods(函数名)可以返回一个函数多态定义的位置,例如:
methods(methods)
# 3 methods for generic function “methods”:
[1] methods(f::Core.Builtin) in Base at reflection.jl:848
[2] methods(f) in Base at reflection.jl:860
[3] methods(f, t) in Base at reflection.jl:840
但这个只适用于查找一个函数的多态定义的位置,不能用来寻找常量或者模块(命名空间)的定义的位置。

1.0.5 & 1.3.0 可以这些常数用啊。不需要 using 因为他们放在 Base.MathConstants

help?> π
"π" can be typed by \pi<tab>

search: π

  π
  pi

  The constant pi.

  Examples
  ≡≡≡≡≡≡≡≡≡≡

  julia> pi
  π = 3.1415926535897...

help?> ℯ
"ℯ" can be typed by \euler<tab>

search: ℯ

  ℯ
  e

  The constant ℯ.

  Examples
  ≡≡≡≡≡≡≡≡≡≡

  julia> ℯ
  ℯ = 2.7182818284590...
julia> @which ℯ
Base.MathConstants

julia> @which MathConstants
Base
1 个赞

是的,最常用的两个常量 π 和 ℯ依然可以用,而比如黄金分割比之类的常数都没了,并且e的普通符号e也用不了只能用 ℯ ,我主要困惑在于它们依然在mathconstants.jl里面但却用不了。它们是被注释掉了吗?可能我对julia的语法了解的太少了,很多地方我看的是靠猜的……

只有导出的变量能不加模块路径直接使用

1 个赞