bug-apl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-apl] strange behavior of --


From: Alexey Veretennikov
Subject: Re: [Bug-apl] strange behavior of --
Date: Sun, 05 Feb 2017 21:24:21 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (darwin)

Ok, as I understand I need to take a look at
UserPreferences::expand_argv
and
UserPreferences::is_APL_script

correct?

Juergen Sauermann <address@hidden> writes:

> Hi,
>
> yes, most of this trouble is caused by how execve() works, which is quite 
> different
> on different platforms. And it happens before apl is being called so I cant 
> do much
> about it.
>
> Sometimes it helps to start apl with -f so that the interpreter knows where 
> to fetch
> its input, like:
>
> #!/usr/local/bin/apl -f /home/eedjsa/tmp/script --script --
>
> /// Jürgen
>
> On 02/04/2017 02:00 PM, Alexey Veretennikov wrote:
>
>  Hi Juergen,
>
> Something is apparently strange on OSX(?). With the latest version
> when I run the same script below I get the silent input without
> echoing, no output like below, and I have to blindly type )off manually
> to exit interpreter.
>
>
> Juergen Sauermann <address@hidden> writes:
>
>  Hi Alexey,
>
> I have changed the handling of command line options, SVN 877.
>
> It now works like this:
>
> script:
>
> #!/usr/local/bin/apl --script --
>
> )copy 5 FILE_IO FIO∆errno
> 8⎕CR ⎕ARG
> )off
>
> output:
>
> address@hidden:~/tmp$ ./script scriptarg
> DUMPED 2017-01-28 22:57:44 (GMT+1)
> ┌→──────────────────────────────────────────────────────────┐
>
> │┌→─────────────────┐ ┌→───────┐ ┌→─┐ ┌→───────┐
> ┌→────────┐│
> ││/usr/local/bin/apl│ │--script│ │--│ │./script│ │scriptarg││
> │└──────────────────┘ └────────┘ └──┘ └────────┘
> └─────────┘│
> └∊──────────────────────────────────────────────────────────┘
>
>
> /// Jürgen
>
> On 02/03/2017 11:06 PM, Alexey Veretennikov wrote:
>
>  Hi,
>
> Yes ./script -- myarg works.
>
> The problem is why I have to repeat -- in command line since I've
> already specified it in the first line of the script, as it is specified
> in documentiation.
>
> Basically I would like to pass my arguments to the script without
> mentioning "--" in the command line.
>
> Juergen Sauermann <address@hidden> writes:
>
>  Hi Alexey,
>
> how about this:
>
> address@hidden:~/tmp$ ./script -- arg**
> **DUMPED 2017-01-28 22:57:44 (GMT+1)**
> **┌→────────────────────────────────────────────────────┐**
> **│┌→─────────────────┐ ┌→───────┐ ┌→───────┐ ┌→─┐ ┌→──┐│**
> **││/usr/local/bin/apl│ │--script│ │./script│ │--│ │arg││**
> **│└──────────────────┘ └────────┘ └────────┘ └──┘ └───┘│**
> **└∊────────────────────────────────────────────────────┘*
>
> There is no point (and it does not work) to put the arguments in the first 
> line
> of the script,
> because if the script itself knows them then the rest of the script can use 
> them
> as well.
>
> *⎕ARG *is what is passed to the script, not what is passed to the interpreter
> mentioned in the script.
> See also *man execve*.
>
> /// Jürgen
>
>
> On 02/03/2017 08:29 PM, Alexey Veretennikov wrote:
>
>  Given the following script:
> ------------------------------------------
> #!apl --script --
> )copy 5 FILE_IO FIO∆errno
> 8⎕CR ⎕ARG
> )off
> ------------------------------------------
> when I try to run it like
>
> ./script.apl myarg
>
> I get the error:
>
> /script.apl myarg
> unknown option 'myarg'
> ...
>
> This happens on 833 and 1.5 and on both linux and osx.
>
> In INFO file it explicitely states:
>
> "Using ’—-’ as last argument on the first line of the script file
> prevents any of the options given to the script to be interpreted as APL
> options; all such options are passed to the application via ⎕ARG."
>
> But it is not happening.
>
>
>
>
>
>
>
>

-- 
Br,
/Alexey

reply via email to

[Prev in Thread] Current Thread [Next in Thread]