[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ⎕FIO Buffer limit is 5000 Bytes
From: |
Hans-Peter Sorge |
Subject: |
Re: ⎕FIO Buffer limit is 5000 Bytes |
Date: |
Sat, 31 Oct 2020 16:10:43 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.3.1 |
EIJHHH - never thought about it - COOOL.
⍝IBM APL:
⍎ ')HOST ls'
VALUE ERROR
)HOST ls
^
⍎')HOST ls'
^
⍝ GNU-APL:
l ← ⍎ ')HOST ls -1'
And it works:-)) Makes life much easier.
f ← ⍎ ')HOST cat filename'
⍝ returns the file as nested vector
⍝ No intermediate file required.
⍝ Does not like binary data:
⍴⍎')HOST cat /OTH/APL/trunk/src/apl-Symbol.o'
Bad UTF8 string: 0x48 0x8B 0x45 0xD8 0x48 0x83 0xC0 0x30 0xEB 0x05 0xB8 at UCS_string.cc:120 .....
doc/apl.info (incorrectly) reads:
snip
Like system commands, user-define commands can only be executed in
immediate
execution mode and not from user-defined functions or from
⍎.
/snip
A last thought:
How to connect apl-command_line to host-stdin? Like
&⍞ ← 'test test test'
⍎ ')HOST &0 > data_entry_from_apl'
OK - Just a weekend. Asking too much:-)
Best Regards
Hans-Peter
Am 31.10.20 um 14:39 schrieb Dr. Jürgen
Sauermann:
Hi,
On 10/30/20 6:14 PM, Kacper Gutowski wrote:
On Fri, Oct 30, 2020 at 02:34:35PM +0100,
Dr. Jürgen Sauermann wrote:
There is also ⎕FIO[26] which reads an
entire file, but I am not sure how it works with popen()ed
streams.
It doesn't at all because it takes a path which additionally
needs to be a regular file because it's mmaped rather than read.
For the record, something like ⍎')HOST ...' might sometimes be
practical.
-k
That is actually a cool idea: run your pipe or program with )HOST,
forward the
output into some /tmp/xxx and read back /tmp/xxx. It also gives
you some more
control over using stdout, stderr, or both from the executed
program .
Jürgen