On Thursday, 4 April 2024 at 18:14:54 UTC, BoQsc wrote:
I'm looking for more readable standard function to add a
**character** literal to a **string**.
The `~` operator is clearly not great while reading a source
code.
I'm not here to discuss that. I'm looking for a function inside
standard library.
The function should be straightforward, up to two words.
Here is what I expect from a programming language:
Pseudo example:
```
import std;
void main(){
string word = hello;
join(word, 'f', " ", "World");
writeln(word); // output: hellof World
}
```
My favorite d feature is lazy ranges. No allocation here.
```
auto s = chain("as ", "df ", "j"); // s is lazy
writeln(s);
```
Of course you can allocate a new string from the chained range:
```
string str = cast(string)s.array.assumeUnique; // without a cast
it is a dstring (why though?)
```