<div dir="auto">filter erases all elements not satisfying given predicate. deleteBy erases only the first element satisfying given predicate.</div><br><div class="gmail_quote"><div dir="ltr">2018년 11월 1일 (목) 12:17에 Vanessa McHale <<a href="mailto:vanessa.mchale@iohk.io">vanessa.mchale@iohk.io</a>>님이 작성:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<p>Isn't <tt>deleteBy</tt> achievable via a filter?<br>
</p>
<div class="m_7302352563316949845moz-cite-prefix">On 10/31/18 10:03 PM, Dannyu NDos
wrote:<br>
</div>
<blockquote type="cite">
<div dir="auto">It would be more ineffecient if I had to convert
my lists to Data.Sets ot Data.Maps every time... For small
lists, the operations are simple and practical. This doesn't
have anything with generalization of type signatures anyway.</div>
<br>
<div class="gmail_quote">
<div dir="ltr">2018년 11월 1일 (목) 11:58에 David Feuer <<a href="mailto:david.feuer@gmail.com" target="_blank" rel="noreferrer">david.feuer@gmail.com</a>>님이
작성:<br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="auto">
<div>I don't think it's really so great that Data.List has a
bunch of operations that are inefficient on lists.<br>
<br>
<div class="gmail_quote">
<div dir="ltr">On Wed, Oct 31, 2018, 10:53 PM Dannyu
NDos <<a href="mailto:ndospark320@gmail.com" rel="noreferrer noreferrer" target="_blank">ndospark320@gmail.com</a>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div><a id="m_7302352563316949845m_-5550854795530768115m_-1011512877651145680gmail-v:deleteBy" class="m_7302352563316949845m_-5550854795530768115m_-1011512877651145680gmail-def" rel="noreferrer noreferrer noreferrer">I've suffered from
inconvenience due to the restricted type
signature. I'll be very glad if such
restrictions are lifted:<br>
</a></div>
<div><a id="m_7302352563316949845m_-5550854795530768115m_-1011512877651145680gmail-v:deleteBy" class="m_7302352563316949845m_-5550854795530768115m_-1011512877651145680gmail-def" rel="noreferrer noreferrer noreferrer"><br>
</a></div>
<div><a id="m_7302352563316949845m_-5550854795530768115m_-1011512877651145680gmail-v:deleteBy" class="m_7302352563316949845m_-5550854795530768115m_-1011512877651145680gmail-def" rel="noreferrer noreferrer noreferrer">deleteBy</a> :: (a ->
b -> <a href="http://hackage.haskell.org/package/base-4.12.0.0/docs/Data-Bool.html#t:Bool" title="Data.Bool" rel="noreferrer noreferrer noreferrer" target="_blank">Bool</a>)
-> a -> [b] -> [b]</div>
<div><a id="m_7302352563316949845m_-5550854795530768115m_-1011512877651145680gmail-v:deleteFirstsBy" class="m_7302352563316949845m_-5550854795530768115m_-1011512877651145680gmail-def" rel="noreferrer noreferrer noreferrer">deleteFirstsBy</a> :: (a
-> b -> <a href="http://hackage.haskell.org/package/base-4.12.0.0/docs/Data-Bool.html#t:Bool" title="Data.Bool" rel="noreferrer noreferrer noreferrer" target="_blank">Bool</a>)
-> [a] -> [b] -> [b]</div>
<div><a id="m_7302352563316949845m_-5550854795530768115m_-1011512877651145680gmail-v:intersectBy" class="m_7302352563316949845m_-5550854795530768115m_-1011512877651145680gmail-def" rel="noreferrer noreferrer noreferrer">intersectBy</a> :: (a
-> b -> <a href="http://hackage.haskell.org/package/base-4.12.0.0/docs/Data-Bool.html#t:Bool" title="Data.Bool" rel="noreferrer noreferrer noreferrer" target="_blank">Bool</a>)
-> [a] -> [b] -> [a] <br>
</div>
<div><br>
</div>
<div>I approve these versions because:</div>
<div>1. It makes more sense that the "usual"
`delete` and `intersect` functions are
specialization of the "By" operations, not the
vice versa.</div>
<div>2. Data.Map.Lazy module from <b>containers</b>
package has these kind of "By" operations.<br>
</div>
<div><br>
</div>
<div>The previous discussion about this in Sep 2016
didn't make much conclusion, so let the discussion
continue.<br>
</div>
</div>
_______________________________________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org" rel="noreferrer
noreferrer noreferrer" target="_blank">Libraries@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
<br>
<fieldset class="m_7302352563316949845mimeAttachmentHeader"></fieldset>
<pre class="m_7302352563316949845moz-quote-pre">_______________________________________________
Libraries mailing list
<a class="m_7302352563316949845moz-txt-link-abbreviated" href="mailto:Libraries@haskell.org" target="_blank" rel="noreferrer">Libraries@haskell.org</a>
<a class="m_7302352563316949845moz-txt-link-freetext" href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" target="_blank" rel="noreferrer">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a>
</pre>
</blockquote>
</div>
_______________________________________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org" target="_blank" rel="noreferrer">Libraries@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" rel="noreferrer noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br>
</blockquote></div>