有没有办法删除现有的绑定,这样我就可以重新定义
t
不,不能删除现有绑定。然而,你可以重新定义
t
任何时候都没问题。
为什么ghci在某些情况下重新定义现有绑定时出错,而在其他情况下则没有?
-Wname-shadowing
在命令行上(可能是因为您通过cabal或stack运行了ghci,并且相关项目在其.cabal文件中指定了此选项)。N、 B。
-Wname阴影
t
-Werror
把单纯的警告变成一个全面的错误。
let
是否;这可能是一个bug:
% ghci -Wname-shadowing -Werror
> let t=3
> let t=4
<interactive>:3:5: warning: [-Wname-shadowing]
This binding for âtâ shadows the existing binding
defined at <interactive>:1:5
<no location info>: error:
Failing due to -Werror.
> t
3
> t=4
> t
4