bug-apl
[Top][All Lists]
Advanced

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

Re: output formatting


From: Dr . Jürgen Sauermann
Subject: Re: output formatting
Date: Sun, 10 Sep 2023 20:59:48 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0

Hi,

the problem seems to be that you let APL print to a terminal (which wraps
long lines at ⎕PW).

A better way is probably to use one of the ⎕FIO functions in your
APL script as to write directly to the output file (which bypasses
the terminal).

Of course output forwarding in the shell would not see anything in
that case.

Best regards and welcome to GNU APL,
Jürgen


On 9/10/23 01:07, Stephen Lewis via Bugs and suggestions for GNU APL wrote:
I am a novice and I am using APL to calculate the
points for a surface. The output will go to another
program. The goal is to write a matrix, with the correct number of rows
and columns, to a file. Elements should be separated by <space>
and rows should be separated by <newline>. I have found that
the output is formatted in an unexpected way.

Test case to write a matrix with 2 rows of 50 columns.
Is there any way to write a matrix with correct shape
to a file when rows exceed 80 characters? I have tried
the following:

Method 1
script_1.apl:
-------------------------------------------------------------
2 50⍴⍳100
-------------------------------------------------------------
apl < script_1.apl
apl < script_1.apl > out_1.txt
Writes welcome banner, elements in 4 row matrix with spurious
extra <space> characters and four messages about end-of-input
and a goodbye message and also writes to stderr.
Method 2
apl -f script_1.apl
apl -f script_1.apl > out_2.txt
Writes welcome banner, elements in 4 row matrix with spurious
extra <space> characters  and a goodbye message and remains in
'apl' unless stdout is redirected to a file or )OFF added to script.
Method 3
script_2.apl:
-------------------------------------------------------------
#! /usr/bin/apl --script --OFF
2 50⍴⍳100
-------------------------------------------------------------
./script_2.apl
./script_2.apl > out_3.txt
Must add )OFF to script or use --OFF.
Writes elements in 4 row matrix with spurious
extra <space> characters and a blank line.
I would like two rows of 50 elements but
output file looks like this:
-------------------------------------------------------------
  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
       27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49  50
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
       77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100

-------------------------------------------------------------




reply via email to

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