Dyalog APL V16.0 Beta 3 READ ME FIRST

This document contains the latest information about Dyalog APL Version 16.0. It was last updated $Date: 2017-06-22 09:49:23 +0100 (Thu, 22 Jun 2017) $ and is associated with $Revision: 30202 $.

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

This file contains references to earlier versions of 16.0; this is for the benefit of our Alpha testers.

Table of Contents

Summary

This section lists various changes and fixes which may affect your application. They have been made in 16.0 rather than in DSS updates since they involve a change in behaviour. They are likely to be moved from this document into the Release Notes.

Documentation

The documentation for Version 16.0 is still being worked on; the Version 16.0 Release Notes should be read in conjunction with this file.
The latest documentation for 16.0 can be found at docs.dyalog.com/16.0 and the latest version of the online help at help.dyalog.com/16.0.

The HTML Renderer is yet to be documented; the status of the documentation can be see in the file docs.dyalog.com/16.0/_current_doc_status.pdf.

Fixes and enhancements added since previous update

IDDescription
14144Having aborted tracing through a function in ⎕se, )save may lead to a syserror 96
14659namespace is not self-contained when everything in it is self-contained
14668Find Objects tool gives Unknown Error on unknown locations
14685NGET et al "guessing algorithm" should be less inclined to choose UTF-16, UTF-32
14688⎕CSV variant option Separator: remove 'Whitespace' and 'Tab' options
14697Non-windows install must add a SALT settings file
14698Windows install must include SALT folder in SALT workdir

16.0 Performance enhancements

This section includes performance features that have improved in 16.0:

IDDescription
11527∊x can be faster
11715transpose square matrices in-place
12861speed up scalar functions on simple scalar arguments
13835≠\ can be faster
14007Rewrite reshape
14021Rewrite cat.c
14065Optimise takedrop
14134Optimise enlist
14195In-place reverse
14196Rewrite rotate for performance
14198Speed up transpose on small arguments in common cases
14272Rewrite replicate/expand/compress
14273Implement boolean compress with pext
14301Rewrite general-case replicate without access functions
14336Rewrite base/represent (⊥⊤)
14337Use take and transpose for base-2 conversion
14357speed up ⊣¨ and ⊢¨
14368Fast transpose for arbitrary boolean matrices
14427Speed up ⊂¨ and ⊃¨ on simple arrays

New In 16.0

This section includes features that have not yet been added to the release notes or are of minor significance:

IDDescription
277Even with ⎕PW>256, you cannot RC beyond the 256th character of a line, but RL does work
4313⎕AT should report proper info for an dfn/idiom
5732The complete image option of the Syserror dialog box fails to generate a process dump.
6751View Function Line numbers should be greyed out and not affect a traditional function.
8418Dynamic scope for dfn error-guards
10682Referring to a label is incorrectly syntax coloured
1338500167-160 Further RNG enhancement - setting a random seed - phase III
13425⎕FX should reject a trad dyadic operator with same name for both operands
13455WIBNI stand-alone editor let you increase/decrease font size
13596⎕nq '⎕se' 'KeyPress' '' generates a Unicode character 32767 in the session
13602buildse.dws should generate lower case filenames, and explain how to save sessions on non-Windows platforms
13609Options→Configure→Keyboard Shortcuts description of AO and DO should be Comment/Uncomment selected lines
13643Explorer crashes APL when too long names are used
13659⎕NAPPEND fails on non seekable device
13677⎕NSIZE reports dubious value for a pipe
1367900167 Change default ⎕RL to ⍬ 1 etc: remove ⎕RL from IDE options
13697Allow font size to be changed in Explorer preview window
13742Pasting 2 lines into Windows session where second line has a ":" leads to a syserror 213
13747Windows: ⎕ED called from dfn loses input caret on exit
13884⎕SIGNAL 0 should clear ⎕EXCEPTION too
13937Windows 16.0: typing such as 'a.a in the session, pausing and then hitting enter leads to a syserror 64
13948Drawing graphical objects onto a bitmap the transparency does not give the correct colors
13970⎕NC⊂ reports local names of functions in a different ns as primitive/derived
14034Session Font Size selection is inadequate
14057Attempting to define a vector consisting of a number with an exponent >308 followed by a complex number generates a DOMAIN ERROR
14070@ is changed into ⎕UCS 0 on classic
14172tty editor: when editing a scripted object, leaning on the delete line key will eventually result in a syserror 999
14189Execute in the session generates a misleading error message if there's a suspension.
14197aplcores do not include the Interesting Information section
14215stop bundling math.dws with the interpreter
14233Editor prompt for confirmation on changes made outside the editor
14253Print Setup dialog GUI issues
14259Modify Session Log dialog has no "Don't ask again" checkbox
14280Crash on revealing very long fn lines
14289Autocomplete should match entries in its history
14293Terminating APL with the Properties of a session menu object dialog open results in a syserror 123
14309Shouldn't scroll to cursor upon Reformat <RD>
14358syserror 77 loading ⎕SE on Windows
14361)save -force doesn't allow saving over non-workspaces
14375Move "Use Ctrl+XCV for Cut/Copy/Paste" option into the IME
14376Rename Enclose-if-simple to Nest in the language bar
14382Kai <01287> , help kai with 16.0 difference involving external namespace ref error which works OK in 15.0
143851 0 1 ⍀ buf inserts garbage characters into the middle of the result
14395Mac/Linux/AIX: location of default.dlf file
14409Remove references to lbar.xml/APL_LANGUAGE_BAR_FILE from mapl script and installation images
14426Wrong branch cut for DECF ¯3○ (arctan)
14431The Find regex validator checks syntax of after every keystroke
14477Remove "(experimental)" from overstrike introducer key on main IME configuration page
14481Pi: change location of config files from ~/.config/dyalog/ to ~/.dyalog/
14504⎕S transformation code behaviour does not follow spec
14516Dyalog 16.0 Classic for MS Windows: default paste into Microsoft word is odd (was fine in earlier versions)
14527Session caption is garbled in Classic
14558Dyalog 16.0 Beta 1: installer of 32-bit version does not let you press the Finish button if you choose not to reboot
14559syserror 999 or 193 in FlipDB test suite
14565The Clear Button in an Edit which is the Input to a Grid does nothing when clicked
14574Dyalog 16.0: Options→Configure tabbed property sheets need to be bigger as some controls are cut off
14579Syserror 999 when calling ⎕FREAD
14585Odd appearence of HasClearButton-enabled Edit field with Style=Multi
14592Enhancement: allow toggling of PCRE matching in Editor search field
14615syserror in ⎕CSV
14631⎕CSV rejects scalar character data
14633⎕R should return a shy result when it writes to a file
1465416 Beta 2 has added stencil to the wrong key, resulting in the Unicode IME failing to start up

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

Further issues will be added to this list

IDDescription
466In order to implement MaskCol on a Bitmap, it is not possible to set the Size of the Image, or the BCol of the Form.
467A Dragable 2 Image does not take into account the Size of the Image, if it has been set, while being dragged.
628Setting the Points property to an inappropriate value in a Poly with explicit LWidth can cause a SysError 999.
6464Dyalog shortcuts leave Start In: field blank .. should be My Documents\Dyalog APL <edition> <version> Files
6934Ensure that workspaces do not give the "GUI objects could not be recreated; the file is from an incompatible architecture" msg.
7745If you try to use ⎕FX to fix a dfn inside # from within ⎕SE, the name of the dfn remains tied to ⎕SE under certain circumstances
7945Expressions such as (⍴)var←1 in a dfn result in var being created global to the dfn
9190NewLeaf crashes with a syntax error if you right click in the viewer and choose "Print (all pages)"
10089Syserror 999 if you create a Poly with LWidth 1 and give an elaborate empty array for the Points property.
11362apl -script returns non-zero exit status
11397UNIX Unicode: ⎕FRENAME does not work across file systems
12357''⎕R'' loses empty lines when writing to a file
12670Dialog boxes such as the About box and syserror box have text missing on Windows when DPI > 125 %
12912The configuration tick box "Enable SALT" should be renamed
13585Editor's quick-search field and Search dialog box do not save their state if unused and are thus awkward to clear
13672Attempting to use the reference in a self-referencing namespace, once serialised and unserialised, leads to syserror 999
13800The newline value for ⎕NPUT must only be as described in the documentation; 0 is not a valid value
13838)continue does not work if there is already a CONTINUE.dws in the current directory
13909Session is not correctly updated when attempting to select more to the right of a multi-line selection
13928⎕SH joins two output lines together under certain circumstances
13947Under Windows, ⎕CMD stops output to STDOUT when output to STDERR occur
13986⎕DM gives wrong name/line-number for error in inner dfn
14038crash in -\⍣¯1 on singleton
14041⎕NGET returns empty result for non-Windows files such as /proc/<pid>/stat
14058Include the cheat sheets in the software builds
14073Bad Poly Points values cause syserror 999
14096Visual glitch if you set and unset a monitor bit in editor
14119Blue vertical stripes after 280th character in a very wide session window with Dyalog for Windows
14160When starting APL from RIDE, parts of the banner and "clear ws" text is repeated
14166Windows: When Dyalog is started from RIDE, it should start hidden
14248Calling 1↑¨0⍴¨⍵ where ⍵ is an instance of a Class with a non-niladic constructor generates a LENGTH ERROR but no clue as to why
14262Windows: When Dyalog is started from RIDE, it should start hidden, but forms should still appear by default
14299⎕MAP of a file on Dyalog on Linux gives a length error while the same operation works on Windows
14322Arcsin may wrongfully return non-zero imaginary part
14475An APL process launched from another cannot locate the RIDE library
14536× fails to check datatype for DECF