A very basic blog about D
John Colvin
john.loughran.colvin at gmail.com
Sun Jul 7 13:39:10 PDT 2013
On Sunday, 7 July 2013 at 20:08:19 UTC, Leandro Lucarella wrote:
> Andrei Alexandrescu, el 7 de July a las 09:06 me escribiste:
>> On 7/7/13 8:55 AM, Andrei Alexandrescu wrote:
>> >Here's a conformant implementation for reference:
>> >http://www.scs.stanford.edu/histar/src/pkg/echo/echo.c
>>
>> Hmm, that's actually not so good, it doesn't ensure that I/O
>> was
>> successful. Anyhow, here's a possibility:
>>
>> import std.stdout;
>> void main(string[] args)
>> {
>> const appendNewline = args.length > 1 && args[1] == "-n";
>> foreach (i, arg; args[appendNewline + 1 .. $])
>> {
>> if (i) write(' ');
>> write(arg);
>> }
>> if (nl) writeln();
>> }
>>
>> But then I figured echo must do escape character processing,
>> see
>> e.g.
>> http://www.raspberryginger.com/jbailey/minix/html/echo_8c-source.html.
>> With that the blog entry would become quite interesting.
>
> If you want the specification, here it is :)
> http://pubs.opengroup.org/onlinepubs/9699919799/utilities/echo.html
I prefer this one :p http://www.gnu.org/fun/jokes/echo-msg.html
From the opengroup spec:
"If the first operand is -n, or if any of the operands contain a
<backslash> character, the results are implementation-defined."
Ah...specifications...
I'm gonna stick with normal linux implementation, as described
here: http://linux.die.net/man/1/echo
However, on my machine, "echo --version" claims it's part of the
GNU coreutils, but when you look at the coreutils docs:
http://www.gnu.org/software/coreutils/manual/html_node/echo-invocation.html#echo-invocation
You get the sentence "the normally-special argument ‘--’ has no
special meaning and is treated like any other string.", which
should preclude the identifying message being printed in the
first place!
More information about the Digitalmars-d-announce
mailing list