我在Show
为自定义数据类型定义实例时遇到问题。
data Circle = Circle { x::Float, y::Float, r::Float }
instance Show Circle where
show :: Circle -> String
show circle = concat $
intersperse "," (map Prelude.show [x circle, y circle, r circle])
这一切都存在于一个名为Main.
Calling Main.show circ
for some Circle的模块中,circ
导致堆栈溢出异常。为什么甚至Prelude.show
被 GHC 解释为对我在这里定义的函数的调用?