<div class="gmail_quote">On Wed, Sep 8, 2010 at 5:21 PM, wren ng thornton <span dir="ltr">&lt;<a href="mailto:wren@community.haskell.org">wren@community.haskell.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br>Text: break :: Text -&gt;  Text -&gt;  (Text, Text)<br>
       breakBy :: (Char -&gt;  Bool) -&gt;  Text -&gt;  (Text, Text)<br>
</div></blockquote>
<br>
One consistency problem I see with this is that the ByteString versions permit breaking on a disjunctive pattern (e.g., \c -&gt; c==&#39;a&#39; || c==&#39;q&#39;) whereas the Text version would require multiple passes to perform these queries, since it takes a Text instead of a (Text-&gt;Bool).<br>
</blockquote><div><br></div><div>See breakBy in the email you quoted.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Other than that, I do agree with the philosophy of the &quot;deliberate and sensible&quot; differences. Though, given the philosophy that these aren&#39;t Char-wise operations, why does Text.breakBy accept a (Char-&gt;Bool)? Is this just an optimization for common cases like breaking on Unicode-defined whitespace codepoints?<br>
</blockquote><div><br></div><div>I kept breakBy in there because it is actually useful. I changed its name because it&#39;s by far less common than &quot;I want to break on a string&quot;. </div></div><br>