Hello,<br><br>I realized today that the type for deleteBy in Data.List is too restrictive. The code is:<br><br><span style="font-family: courier new,monospace;">deleteBy á á á á á á á á:: (a -&gt; a -&gt; Bool) -&gt; a -&gt; [a] -&gt; [a]</span><br style="font-family: courier new,monospace;">

<span style="font-family: courier new,monospace;">deleteBy _ á_ [] á á á á= []</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">deleteBy eq x (y:ys) á á= if x `eq` y then ys else y : deleteBy eq x ys</span><br>

<br>though the type deleteBy :: (b -&gt; a -&gt; Bool) -&gt; b -&gt; [a] -&gt; [a] will do good as well.<br><br>Is there a particular reason that the type has this restriction? Otherwise, where can I post a suggestion to have it untightened?<br>

<br>Best regards,<br>Dan RosÚn<br><br>references:<br><a href="http://haskell.org/ghc/docs/latest/html/libraries/base-4.2.0.0/Data-List.html#v:deleteBy">http://haskell.org/ghc/docs/latest/html/libraries/base-4.2.0.0/Data-List.html#v:deleteBy</a><br>


<a href="http://www.haskell.org/ghc/docs/latest/html/libraries/base-4.2.0.0/src/Data-List.html#deleteBy">http://www.haskell.org/ghc/docs/latest/html/libraries/base-4.2.0.0/src/Data-List.html#deleteBy</a><br>