让Erlang shell忘记BIF

让Erlang shell忘记BIF,erlang,erlang-shell,erl,Erlang,Erlang Shell,Erl,有没有办法让Erlang忘记一个内置函数,这样我就可以使用这个名称 忘了检索吧这里有点混乱 retrieve不是内置函数,您可能会想到receive receive不是一个内置函数,而是语言中的一个特殊标记,很像if、case、end等等。这些是不能修改的 BIF主要在erlang模块中实现,您不能重新定义这个模块 erlang中的许多BIF是在模块等中自动导入的。任何模块本地定义都将接管这些功能,否则它们就是erlang:MyBif(…)的语法快捷方式 shell复制了这些自动导入,但也提供了

有没有办法让Erlang忘记一个内置函数,这样我就可以使用这个名称


忘了检索吧这里有点混乱

  • retrieve
    不是内置函数,您可能会想到
    receive
  • receive
    不是一个内置函数,而是语言中的一个特殊标记,很像
    if
    case
    end
    等等。这些是不能修改的
  • BIF主要在
    erlang
    模块中实现,您不能重新定义这个模块
  • erlang
    中的许多BIF是在模块等中自动导入的。任何模块本地定义都将接管这些功能,否则它们就是
    erlang:MyBif(…)
    的语法快捷方式
  • shell复制了这些自动导入,但也提供了其他功能。从技术上讲,它们不是BIF。看
  • 您可以通过配置自己的模块来覆盖shell的自动导入。这些只能在外壳中工作
  • 要避免在模块中自动导入,请使用
    -compile({no_auto_import,[Name/N]})。
    module属性,以便
    Name(…)
    始终使用本地函数

  • 这里有点混乱

  • retrieve
    不是内置函数,您可能会想到
    receive
  • receive
    不是一个内置函数,而是语言中的一个特殊标记,很像
    if
    case
    end
    等等。这些是不能修改的
  • BIF主要在
    erlang
    模块中实现,您不能重新定义这个模块
  • erlang
    中的许多BIF是在模块等中自动导入的。任何模块本地定义都将接管这些功能,否则它们就是
    erlang:MyBif(…)
    的语法快捷方式
  • shell复制了这些自动导入,但也提供了其他功能。从技术上讲,它们不是BIF。看
  • 您可以通过配置自己的模块来覆盖shell的自动导入。这些只能在外壳中工作
  • 要避免在模块中自动导入,请使用
    -compile({no_auto_import,[Name/N]})。
    module属性,以便
    Name(…)
    始终使用本地函数