Just want to point out that If you really want a comma separated list in text format, then the "best" (easiest) way would be using the formatted write with list syntax:

```D
    writefln("Invoked with: %(%s, %).", args);
```
```
rdmd main.d hello "C:\My Folder" world
Invoked with: "main.exe", "hello", "C:\\My Folder", "world".
```
Using the "raw" range means you data will be "bracket enclosed":
```
Invoked with: ["main.exe", "hello", "C:\\My Folder", "world"].
```

The code is commented, so it doesn't matter much anyways, but just wanted to point it out.