On Tuesday, 26 April 2016 at 08:50:23 UTC, ixid wrote:
Please find an example of a newcomer who would be confused by print. This is an objectionable argument because none of the people making it are newcomers, you're using an entirely theoretical newcomer as your argument, and seem to think 'print(a, b, c);' is going to confuse people more than

I can out myself as a newcomer (since February) and a lot of stuff in D is pretty confusing. For example - a bit related - the separation between std.stdio and std.file. At least I expected that I can use `writeln` on files :/

There are already many other parts that require explanation, so please let stdio be a simple module. Btw to prove the point that two names are bad, let me give you `AliasSeq` and `TypeTuple`.

On Tuesday, 26 April 2016 at 12:18:11 UTC, cym13 wrote:
Finally it doesn't bring much. One learns writeln, laments a bit that it doesn't put spaces itself then just accepts it. I do think that easing the path of newcommers is important, I don't think print is a good way to do that. I'm all with J.M.D there.

I do agree with cym13, J.M.D, Jack Stouffer, rikki, klickverbot ;-)

Regardless, even having two printing functions requires that programmers learn what the differences between them are. Each one added to the mix is yet another one whose slight differences has to be distinguished from the others. And we already have 4 of them - write, writef, writeln, and writefln, which is arguably too many. But at least they have a sensible naming scheme that helps distinguish them. print, on the other hand, has nothing in common with them and no indicators in its name how it differs from the others.

Honestly, I see no value whatsoever in print. writefln already does the same job and in a clearer manner.

Or `writeln(chain(a, b, c).join(','))`.
However a compromise could be to allow writeln!`,`(a, b, c, d, e), but I guess for most of the cases `dump` is actually the function that the user wants to use.

If it was available today, I would certainly use it for more
convenient debugging, however the version I proposed [1]
seems more useful to me.
Should I make a PR?
[1]: https://github.com/dlang/phobos/pull/3971#issuecomment-208058229

As mentioned on github I would love to see a proper dump function and this would be quite useful for newcomers.

Reply via email to