Dyalog APL V18.2 READ ME FIRST

This document contains the latest information about Dyalog APL Version 18.2.

This file is dyalog_readme.htm and is included in the help directory in the Dyalog installation.

Table of Contents

Summary

As a result of the issues discovered in 18.0, Dyalog decided to recreate "18.1" by starting with the 17.0 code and reviewing every commit since then in turn; any commit which we were concerned about has been omitted. Once this was done, we recreated any missing functionality afresh. For various administrative reasons it has proven considerably simpler to name this newly created code as 18.2, rather than replacing the existant 18.1 with the new code. Therefore Dyalog 18.1 will never be released and instead we will skip from 18.0 to 18.2. As already mentioned, 18.2 should be functionally identical to 18.1; the underlying interpreter source code may be different, and the performance characteristics may differ too.

Documentation

The 18.2 documentation is included in the installation images and is available online at https://help.dyalog.com/18.2; the PDFs etc can be found at https://docs.dyalog.com/18.2.

Problems with the LOAD configuration parameter in early 18.2 images

Early releases of 18.2 had a flaw in the handling of the Create event on ⎕SE. That meant that there was a problem when using Link to launch applications directly from a directory containing source files using the LOAD parameter (see Configuration Parameters -> LOAD in the Dyalog for Microsoft Windows Installation and Configuration Guide).

If you installed 18.2.45351 or earlier then if on Windows you are using your own session file (which will always be the case if APL was installed for all users, because a local copy is made on first use), or on any platform if you have created your own modified session and you want to be able to specify

      LOAD=my.directory

then you should do one of the following:

The same applies on Windows if you want to be able to right click on a directory in Windows Explorer in order to Load the contents into APL.

If you do not intend to make use of the LOAD= parameter then you do not need to follow the steps listed above.

Issues Fixed in Version 18.2 Reported in Earlier Versions of Dyalog APL

IDDescription
4381The RM key only works from trace windows, it should also work from the session.
5542⎕DM errors when running dfns can include the undocumented and rather odd "__field_initialize_result__←"
6165WIBNI if you could set the colour of the top left corner of a grid
7680Editor syntax colouring does not colour one-line dfn idioms as idiom colour when editing fn.
8789Editor: removing text in error does not always result in remaining text being correctly coloured
9443Inserting an inner Dfn into a multi-line dfn causes surrounding keywords such as :namespace to remain in error colour
9694Syntax colouring issue when introducing/correcting error in control structure
11401⎕DMX.DM is not populated when ⎕SIGNAL is called with nested right argument but ⎕DM is
13218Syntax colouring: opening curly brace in dfn wrongly coloured red in the editor
13680Attempting to edit a variable in a public function in an Instance results in the editor opening a new function
13823Editor XML syntax colouring does not work on some XAML text
14304When tracing a public instance method, <ED> on a local variable opens a new empty method window instead of opening the local var
14543Save file content→Save as text in the workspace does not save a text variable for objects brought in via ⎕FIX
14629⎕DMX.DM is not populated when DWA errorx raises an error but ⎕DM is
15049Red flickering close button when mouse is over it if no DPI scaling is on
16024Improve description of "Disable traps in session"
16050The description of <MA> is incorrect
16054Named dfn idioms are coloured as errors
16456⌸ understands syntax errors in ⍺⍺ as something entirely else
16874Cosmetic :Require issues
17141Quote Quad output is not immediately flushed to RIDE
17424⎕DMX.Message should tell user if the clipboard cannot be updated because it is locked by another process
17443Invalid token-related error messages are not helpful and a bit inconsitent
17666Editor: with a new item, File->Save As updates 5176⌶0, but close the function and that info is lost
17712Tracer identifies local variable in instance method as a new method in the underlying class
17713Tracer identifies local variable in instance method as a new method; QT shows fn in tracer and ER jumps to top of new fn
17745Crash in ⎕NA with a workspace whose internal link to a DLL or shared library was not properly closed
17896Decode with single-cell right argument allows nested arrays
17921Error caret position wrong for {(1+1
17975With a full filesystem, an attempt to call ⎕fcreate apparently works
18132⎕NR fails on dfn passed as operand from script definition
18146Remove "Message" column from workspace explorer lists
18212Output of text containing NL to ODE session includes spurious trailing spaces
18222__field_initialize_result__ appears in VALUE ERROR generated inside d-op
18243⎕DMX error correction: Date-times must be no earlier than year -4713 in the Proleptic Gregorian Calendar
18353(,⎕NS⍬).(∘+)∘⊢⍬ generates syserror 999; remove the "," and it's ok
18364(0\0⍴#),←1 causes a syserror 999
183942⎕nq'.' 'setdflags' 483 ⋄ !9∘.((0∘⊥⍤¯1),(+⍴)0⍨)(5)(0 0) generates a syserror 999 (or 77)
18395No error is generated if you make a mistake calling a multi-line dfn typed into the session while DYALOG_LINEEDITOR_MODE is on
18409RIDE protocol: windows and linux behave differently when fixing unfixable class tied to a file with 2 ⎕FIX
18411NONCE ERROR when trying to get the source of an unfixable class on windows
18424Dyalog message box does not honour the custom caption setting
18477⎕FIX should not output status messages
18509If a class script is open in the editor, tracing a method of the class only shows the method and not the whole script
18512Add a helpful message to DOMAIN ERRORS on attempted operations on DECFs when ⎕FR=645
18514Syntax Colouring of a GUI base class in :Class is wrong
18517Language bar tips can prevent the use of the language bar
18540Editor no longer allows a :For :In :Endfor block to be collapsed
18572Space between ; and name in locals lines causes name to be coloured as error
18600Syserror on localized HTMLRenderer
18606Spurious file associations produced when doing (2 ⎕FIX ⎕SRC ⍵) on a script that has :Require
18645Interpreter may lose (2⎕FIX) file association after edit
18718macOS: With an HTMLRenderer with URL www.dyalog.com, attempts to quit APL lead to an EPIPE or exit code 139 error
18720Tracing into a function executed by ⍎, and then branching out of the function can stop in a later function
18798]fileassociations is broken
18822100% CPU loop on )LOAD of workspace containing an HTMLRenderer object
18824Pause on error setting is not honoured when Windows APL is started from RIDE
18874⎕fix with a fairly horrible character vector causes 18.1 to simply vanish (Windows)
18876Windows: ⍎⎕Using⍪←1024⍴'a' causes 18.1 to simply disappear
18907Windows standalone editor does not use color scheme nor keystrokes saved with the product
18910Quote Quad output from multiple threads appears on multiple lines
19087Under RIDE, Dyalog generates a value error for a label in a namespace script method included by a class
19123DWA gets wrong definitions for ARRAY_ISNUMB etc in eltypes.h because of overuse of AP_BUILD
19179The managed DWA interface does not use the portable BOUND type for array dimensions
19288Find/Find Objects & Quicksearch: if the search string cannot be in word (eg ⍸) then assume that Match Whole Word is not selected
19340Editing a function that resided in a shared code file can cause a syserror
19393Odd dangling word From if you try to )continue from within ⎕SE
19456After calling ⎕using, 2017⌶⍬ generates a syserror 999 whereas 2017⌶'' is ok
194858415⌶ should not accept decfs, and should not return decfs
19587Form does not go away until garbage collection when a reference to the form is passed to a dfn
19608Launch interpreter on files other than .DWS: don't pass arg to invoked function if it is niladic
19624⎕fx'foo' ':attribute##a' and similarly ill-defined :attribute statements generate syserror 999s