Haskellの関数の書き方についてちょっと...

これは前から思ってたんですけど、例えばReal World Haskellのp125でパターンマッチを利用した良くある関数ですけど、

renderJValue :: JValue -> Doc
renderJValue (JBool True)  = text "true"
renderJValue (JBool False) = text "false"
renderJValue JNull         = text "null"
renderJValue (JNumber num) = double num
renderJValue (JString str) = string str

これって、

renderJValue :: JValue -> Doc
(JBool True)  = text "true"
(JBool False) = text "false"
JNull         = text "null"
(JNumber num) = double num
(JString str) = string str

これでもよくない?型宣言がないとダメだけど、毎回関数名書くのってなんだか冗長な気がするんですけど...