<br><br><div class="gmail_quote">On Thu, Apr 19, 2012 at 14:53, Matthew Flatt <span dir="ltr">&lt;<a href="mailto:mflatt@cs.utah.edu">mflatt@cs.utah.edu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="im">At Thu, 19 Apr 2012 14:43:44 +0200, Laurent wrote:<br>
&gt; On Thu, Apr 19, 2012 at 14:33, Matthew Flatt &lt;<a href="mailto:mflatt@cs.utah.edu">mflatt@cs.utah.edu</a>&gt; wrote:<br>
&gt;<br>
&gt; &gt; I agree with this: we should add `string-split&#39;, the one-argument case<br>
&gt; &gt; should be as Eli wrote,<br>
&gt;<br>
&gt;<br>
&gt; About this I&#39;m not sure, as one cannot reproduce this behavior by providing<br>
&gt; an argument (or it could make the difference between string-as-not-regexps<br>
&gt; and regexps? Wouldn&#39;t this be different from other places?).<br>
<br>
</div>I&#39;m suggesting that supplying `#f&#39; as the argument would be the same as<br>
not supplying the argument.<br>
<br>
It is a special case, though. I don&#39;t mind the specialness here,<br>
because I see the job of `string-split&#39; as making a couple of useful<br>
special cases easy (as opposed to the generality of `regexp-split&#39;).<br></blockquote><div><br>Then instead of #f one idea is to go one step further and consider different useful cases based on input symbols like &#39;whitespaces, &#39;non-alpha, etc. ? Or even a list of string/symbols that can be used as a splitter.<br>

That would make a more powerful function for sure. (It&#39;s just that I&#39;m troubled by the uniqueness of this magical default argument)<br><br>Laurent<br><br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">


<div class="HOEnZb"><div class="h5"><br>
<br>
&gt; It would then appear somewhat magical. To me the &quot; &quot; default splitter seems<br>
&gt; more intuitive.<br>
&gt;<br>
&gt; Laurent<br>
&gt;<br>
&gt;<br>
&gt; &gt; and the two-argument case should be as Laurent<br>
&gt; &gt; wrote. (Probably the optional second argument should be string-or-#f,<br>
&gt; &gt; where #f means to use #px&quot;\\s+&quot;.)<br>
&gt; &gt;<br>
&gt; &gt; At Thu, 19 Apr 2012 14:30:31 +0200, Laurent wrote:<br>
&gt; &gt; &gt;  (define (string-split str [sep #px&quot;\\s+&quot;])<br>
&gt; &gt; &gt; &gt;    (remove* &#39;(&quot;&quot;) (regexp-split sep str)))<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Nearly, I meant something more like this:<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; (define (string-split str [splitter &quot; &quot;])<br>
&gt; &gt; &gt;   (regexp-split (regexp-quote splitter) str))<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; No regexp from the user POV, and much easier to use with little<br>
&gt; &gt; knowledge.<br>
&gt; &gt; &gt; _________________________<br>
&gt; &gt; &gt;   Racket Developers list:<br>
&gt; &gt; &gt;   <a href="http://lists.racket-lang.org/dev" target="_blank">http://lists.racket-lang.org/dev</a><br>
&gt; &gt;<br>
</div></div></blockquote></div><br>