<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 10 January 2014 02:36, Dicebot <span dir="ltr"><<a href="mailto:public@dicebot.lv" target="_blank">public@dicebot.lv</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class="im">On Thursday, 9 January 2014 at 16:22:08 UTC, Manu wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
It's nice that it's unicode correct, but it's not nice that you have to be<br>
familiar with a massive amount of the standard library and you need to<br>
search through 4-5 (huge! and often poorly documented) modules to find the<br>
functions you need to perform _basic string operations_, like finding the<br>
last instance of a character...<br>
</blockquote>
<br></div>
That I do agree. One idea is that once everything is split into smaller packages we can start providing meta-packages that do public imports of small sets of commonly used functions.<br>
<br>
Still once needed functions are found I do consider end result very robust for what it actually does and don't know any other language that does it better.<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
My standing opinion is that string manipulation in D is not nice, it is<br>
possibly the most difficult and time consuming I have used in any language<br>
ever. Am I alone?<br>
</blockquote>
<br></div>
Unicode is the doom. If you only keep ASCII in mind you statement is indeed true and D stuff seems ridiculously complicated compared even to plain C. But it has also teached me that _every single_ program I have written before in other languages was broken in regards to Unicode handling. So, yes, it is quite difficult but it is the cost for doing what no one else does - being correct out of the box. Well, at least in most scenarios :)<br>
</blockquote></div><br></div><div class="gmail_extra">That's great and all, but it's no good if I have to pay for it (time and money!) even when that's not a requirement. I'm dealing with ascii right now.</div>
<div class="gmail_extra">At very least, there needs to be massive assistance. std.string should probably offer a crap load of aliases and wrappers for common operations.</div><div class="gmail_extra">And I hate how std.algorithm looks in intellisense pop ups, you never have any idea what types you're dealing with, everything is templates, many levels deep.</div>
<div class="gmail_extra">And then it's riddled with these little wrappers around 'Impl' types, which just adds more layers to the typing confusion.</div><div class="gmail_extra">I want string functions that deal with types like 'string', not 'Unqual!(ElementEncodingType!(ElementType!Range))[]'</div>
</div>