1
2 09/23/87 apl
3 Known errors in the current release of apl.
4 # Associated TR's
5 Description
6
7 491 phx14469
8 when a suspended function with labels is edited, not matter how
9 trivially, SI DAMAGE results. SI DAMAGE is defined to result only in a
10 limited number of cases when editing a function.
11
12 490 phx14469
13 stop and trace vectors are lost across function edits.
14
15 489 phx14469
16 If you edit a suspended function you get an SI DAMAGE error even if you
17 actually make no changes to the function.
18
19 488 phx13315
20 APL should be changed to call cu_$evaluate_active_string to perform
21 active function evaluation qAF. It currently calls cu_$af, which is
22 not the right thing, and will break soon.
23
24 486 MPR6751
25 The qNL system function returns a garbage value if the left arg is an
26 expression. Try:
27 A-17
28 1p'A' qNL 2
29
30 484 phx09164
31 APL interprets the mode string to get the terminal's line length. It
32 should call get_line_length_. APL will break when the mode string
33 format changes.
34
35 483
36 The last character of qCS qCS195 is still c<BS>|
37 cent sign instead of -<BS>,
38
39 482 phx7511
40 The algorithm used by the domino operator will sometimes
41 diagnose a regular matrix as singular and report a
42 DOMAIN ERROR. For more info and a fix see phx07511.
43
44 478 phx7211
45 read_tsoapl_tape references error_table_$too_many_files.
46 See phx07211.
47
48 477 phx7211
49 apl_dim_util_ references apl_error_table_$no_room_for_sdb
50 See phx07211.
51
52 475
53 The APL dim should restore normal terminal modes whenever
54 the user is returned to command level whether or not
55 it was intensional.
56
57 474
58 In the editor <n>q2 editing starting at the 2nd column
59 positions the cursor correctly at first, but
60 inserts space or deletes chars from column 1. Starting
61 in column 1 or 3 works OK.
62
63 471
64 If the same variable is listed as both a parameter and a
65 local variable of a function, improper localization may
66 occur, causing a downward funarg problem.
67
68 467
69 5 5 ^^H| 1 gives a LENGTH ERROR instead of a 5x5 matrix
70 with a 1 in the upper left corner and 0's elsewhere.
71
72 466
73 While doing quote-quad input the input prompt may be
74 spuriously be printed. Problem with the dim.
75
76 465
77 Single-quotes typed in comments at function definition
78 time are not ignored. This is a problem with the dim.
79
80 463 phx14466
81 The editor does not allow del to be typed into comments or strings
82 while editing. Del is looked for too globally by the editor.
83
84 462
85 Certain index errors in axis operators are reported as rank
86 errors. Try: 0,0 2 2 p 1 2 3 4
87
88 461
89 APL does not preserve trailing blanks on quota-quad input.
90 IBM standard is to preserve them.
91
92 458
93 )SI should print negative line numbers for damaged fcns;
94 returning to a damaged fcn should print SI DAMAGE, and
95 then return immediately. Maybe a damaged flag in the
96 lexed function bead or function frame would be handy
97 watch out for save and load.
98
99 457
100 should be able to edit pendent functions; its the only
101 way to list them, after all. Just be sure to handle any
102 SI DAMAGE.
103
104 456
105 editor does not wrap lines longer than qPW properly.
106 meta-issue: no programs should rely on the DIM to wrap.
107
108 455
109 bare output quote-quad should ignore qPW.
110
111 453
112 q-^H<A-^H<10E38 prints the positive identity! Should give a
113 NONCE ERROR because 10E38 is too big.
114
115 451 MPR5355
116 )DFN A$B works; should be refused. Also if the sum of the
117 segname and entryname is longer than 32 chars, it fails.
118
119 449
120 matrix divide/invert domino sometimes fails if operands
121 are expressions. Bypass is to make them names.
122
123 448
124 i0^^H|SCALAR and i0v^H|SCALAR get out_of_bounds faults!
125
126 447
127 VECTOR'' should work; type of null vector should be
128 ignored in this context.
129
130 446
131 i0_^Hfi0 should work; gets a LENGTH ERROR.
132
133 437
134 )LIB and maybe others accept signed library numbers!
135 Should accept only unsigned integers.
136
137 436
138 )SI and )SINL ignore any arguments; should diagnose them.
139
140 434
141 apl does not co-exist with either audit or graphics. If
142 you wish to audit an apl session, you must attach_audit
143 AFTER entering apl, and detach_audit BEFORE leaving apl.
144 If you wish to use graphics with apl, you must
145 setup_graphics BEFORE entering apl, and remove_graphics
146 AFTER leaving apl. The fix to this problem involves
147 changing both apl and graphics.
148
149 428
150 qPW fails to change line length on user_output. )WIDTH
151 is OK.
152
153 427
154 running a function with errors produces no messages post
155 4.00 only.
156
157 418
158 cannot invert 4 4p2 0 0 0 6 1 0 ^1 8 2 ^2 0 4 2 ^2 2. Yet
159 it would appear to be invertible, since BASIC can do it.
160 Answer is 4 4p.5 0 0 0 ^2 1 ^.5 .5 0 1 ^1 .5 1 0 ^.5 .5
161 Problem is completely incorrect pivoting algorithm.
162
163 409
164 apl accepts pathnames for external functions, but won't
165 initiate them properly if the reference name is already
166 known.
167
168 399
169 )COPY WS qLX fails...cannot copy any system variables.
170 Should diagnose it. IBM doesn't permit it, either.
171
172 394
173 can't )ERASE a stop/trace vector. Bypass-- assign '' to
174 it. Should diagnose stop/trace and system variables.
175
176 389
177 1 8^^H|0 8p0 produces garbage instead of zeros. bug in
178 take can be bypassed by using a name as right arg, not
179 an expr.
180
181 377
182 apl_error_ should print non-apl status codes in long form
183 automatically.
184
185 376
186 there is a window in assignment specification such that
187 quitting in the window can lose the value of a variable.
188
189 374
190 the list 2 2p5;6 7 8 fails. Handling of cons is wrong.
191
192 358
193 integer tolerance algorithm fails if qIT is exactly
194 zero. This causes various Boolean operators to give
195 DOMAIN ERRORs for integer arguments. The following
196 programs are affected: apl_arrow_operators_,
197 apl_domino_operator_, apl_file_system, apl_monadic_,
198 apl_monadic_format_, apl_monadic_rho_, apl_parse_,
199 apl_random_, apl_rotate_, apl_subscript_a_value_,
200 apl_system_functions_, apl_system_variables_,
201 apl_transpose_.
202
203 357
204 matrix inverter inverts 10xA but not A. See test case.
205
206 355
207 editor should diagnose redundant localizations.
208
209 337
210 change character and editor input modes to reattach
211 user_input to user_i/o after end-of-file. editor fixed
212 in 4.00
213
214 321
215 f/''>-f/'' gets a DOMAIN ERROR. Problem with
216 comparison tolerance checking algorithm.
217
218 306
219 neither ctw nor apl checks saved functions for syntax
220 errors.
221
222 305
223 ctw does not convert S-delta and T-delta correctly.
224
225 303
226 apl and apl_start should reject -ttp when in absentee.
227
228 301
229 all subroutines that decrement reference counts should
230 null their input argument.
231
232 299
233 DIM doesn't pad LF character \300.
234
235 285
236 )LOAD TEST285;S-^H<1;)SAVE;)LOAD; value of S has reverted
237 to localized value, not 1. Seems to be caused by bad
238 SI.
239
240 284
241 )CONTINUE command does not respect restrict_save
242 flag...anyway, it should probably have its own restrict
243 flag.
244
245 277
246 ravel operator does not recover space used by rho vector
247 if arg was on stack; this causes problems for file
248 system.
249
250 275
251 lex-- V+V1 2 3-^H<4 5 6 gives wrong error
252 message...complains about system variables!
253
254 263
255 convert DIM to iox_, convert ios_ calls to iox, have apl
256 use use user_input and user_output instead of apl_input
257 and apl_output.
258
259 258
260 editor doesn't take line length into account during
261 output.
262
263 249
264 command: "apl -td non_existant_dir" causes apl to blow up.
265
266 240
267 editor: one-line listing non-existant fcn should leave
268 defn mode. gFOO qg. 4.00 editor leaves defn mode,
269 but also creates a function named FOO!
270
271 237
272 lex: confusing message printed for +-^H\3A -^H\ conflicts
273 with 3.
274
275 187
276 103<BS><ATTN><BS><ATTN>5 should be 15, not 105.
277
278 168
279 dim: N^H_ in first column after hidden NL prints as N,
280 dropping underscore.