On Saturday, 15 April 2017 at 21:38:24 UTC, cym13 wrote:
On Saturday, 15 April 2017 at 20:20:49 UTC, Stanislav Blinov
wrote:
On Saturday, 15 April 2017 at 20:12:41 UTC, cym13 wrote:
On Saturday, 15 April 2017 at 20:04:13 UTC, Jonas Drewsen
wrote:
This has been proposed before, and I still don't see the
added value compared to:
auto a=7;
writeln(a, " times 3 is ", a*3);
besides adding compiler complexity, language complexity and
parsing complexity which leaves room for more bugs to be
invented. I'm a bit more harsh than I could be, but if this
simple question has no clear answer I don't see why it sould
make it into the language.
Try a different context:
auto a = 7;
import std.format;
auto str = format("%s times 3 is %s", a, a*3);
//or
import std.conv;
auto str = text(a, " times 3 is ", a*3);
//or
auto str = $"{a} times 3 is {a*3}";
This tells me nothing. What value does it add really? Do we
need yet another way to make a damn string? There is value in
having a clear, unique interface. I know it's nowhere near
unique right now but that only more reasons not to add yet
another method to do what can already be done with 3 (!) more
keystrokes.
How about... it removes an import or two? Roughly 41.5% of Phobos
(module-wise) depends on either format() or text(). And I didn't
even include the ~ and .stringofs in the search. Quick visual
scan suggests that a good portion of that could be replaced with
the proposed solution, removing the dependency. Talk about
"parsing complexity"...
You have a peculiar way of asking for a clear answer. There are
ways to vent frustration without inflicting it on others, you
know.