bb という中置演算子が定義できない


たびたび失礼します。  
haskellについての質問です。  
`&&`式で

[code]

    True && _ = _
    False && _ = False
    
[/code]

を条件式で表せ、という問題なのですが

[code]

    (bb) :: Bool -> a -> b
    x bb y = if x == True then y else x
    
[/code]

上記のプログラムでコンパイルしたところ以下のエラーがでました

[code]

    enzan.hs:1:1: error:
    Invalid type signature: (bb) :: ...
    Should be of form <variable> :: <type>
      |
    1 | (bb) :: Bool -> a -> b || Bool
      | ^^^^
    
[/code]

プログラムの何が間違っているのかよく分からないのですがご教授お願いします。




`bb` を中置演算子のように使用していますが、中置演算子は記号でないといけません。

例えば、`.&&.` を定義するように改修するとエラーがなくなります。

[code]

    (.&&.) :: Bool -> Bool -> Bool
    x .&&. y = if x then y else x
    
[/code]

