Requoting myself with emphasis

*> If you can post a file that does that, I'll eat my hat!*

show me an "exapmle.raku" file that the command "perl6 example.raku" won't
interpolate variables in Windows but will in Unix in a buggy way, and I'll
eat my hat. I'm not here to discuss command-line interpretation in DOS
cmd.exe vs Bourne-shell /bin/sh vs Bourne-again-shell /usr/local/bin/bash
etc.

-y


On Wed, Dec 4, 2019 at 12:47 AM ToddAndMargo via perl6-users <
perl6-us...@perl.org> wrote:

> On 2019-12-03 19:14, Paul Procacci wrote:
> > echo isn't a great example at all.  echo is both OS and SHELL specific.
> > Not only that, echo has argv to work with; each with it's own
> > terminating '\0'.
> > It absolutely can be quite literal, though that doesn't stop the
> > implementors from doing whatever they want.
> >
> > Here's a snippet from my own OS's `man echo`:
> >
> >       "Most shells provide a builtin echo command which tends to differ
> from
> >       this utility in the treatment of options and backslashes.  Consult
> the
> >       builtin(1) manual page."
> >
> >
> > Here's the cruft of it ......
> >
> > With a single quoted string ..... containing a single quote itself
> > ....... in any given interpreted language ..... with no EOL or EOF in
> > sight ....
> > How would you let the interpreter know your done?
> > The answer:  You can't without escaping the single quote.
> >
> > Some more examples I wrote up.
> > You'll note, they all use single quotes, yet they all interpret as they
> > absolutely should.
> >
> > Example Perl 5:
> > ---------------------------------
> > # perl -e "print '\''" ;
> > '
> > # perl -e "print '\\'" ;
> > \
> > # perl -e "print '\a'" ;
> > \a
> >
> >
> > Example PHP 7.3:
> > ---------------------------------
> > # php -r "print '\'';"
> > '
> > # php -r "print '\\';"
> > \
> > # php -r "print '\a';"
> > \a
> >
> > Example python3.6  **unique**:
> > ---------------------------------------
> > # python3.6 -c "print('\'')"
> > '
> > # python3.6 -c "print('\\')"
> > \
> > # python3.6 -c "print('\a')" | hexdump -oc | head -1
> > 0000000  005007
> >
>
> You make a good point.
>
> Bash language may be the exception then:
>
>
> $ cat echo.sh
> #!/usr/bin/bash
> echo '\'
>
> linuxutil]$ echo.sh
> \
>
>
> "echo" does not recognize interpretation unless you invoke
> it with -e
>
> $ echo -e '\\'
> \
>

Reply via email to