APL+Win 13.1

The APL+Win v13.1 release is available and recommended for all current APL+Win subscribers.

To download this release, visit and click the file "APL+Win v13.1 Update" using your software download username and password. For a new installation, click the file "APL+Win v13.1 installer".

The APL+Win 13.1 includes the following enhancements/bug fixes:
(Note: Workspaces saved in v13.1 will not load in prior versions of APL+Win.)

Visual Styles (Themes)

  1. Visual Styles (Themes)

    The Windows visual styles (Themes) in ⎕WI controls and the session manager window are now supported with an external manifest file: aplw.exe.manifest. This has two important changes:

    1. To enable the Windows visual styles, you must install the manifest file into the same directory with APLW.EXE and APLWR.EXE and it must be named the same as the .EXE file (including the .EXE extension but with ".manifest" appended at the end). For example, if you are starting MYPROGRAM.EXE then the manifest must be named MYPROGRAM.EXE.manifest.

    2. The Microsoft Visual C++ 2008 runtime library is no longer a requirement of APL+Win v13.1; meaning the following four files are no longer required to be distributed with your APL+Win runtime application:



  1. New Mismatch primitive function (≢)

    Mismatch determines the non-equivalence of two arrays. It is the logical NOT of ­­≡ {Match} primitive;

    (A ≢ B) = (~ A ≡ B)

    Aliases: "Not Match" and "Not Equivalent".

    The keyboard shortcut key is Alt+Shift+Q.

    For example:

          'bex' ≢ 'b' 'e' 'x'
  2. New Commute operator (⍨)

    The commute operator reverses the arguments before applying the function; (A fn ⍨ B) ­≡ (B fn A).

    The keyboard shortcut is Alt+Shift+T.

    For example:

          10 - 7
          7 -⍨­ 10
  3. Optimized Catenation

    The syntax for optimized catenation is as follows:

          A ,← B

    This is functionally the same as:

          A ← A,B

    The syntax is similar to the in-place operations in other programming languages like C++ and C#. However, in APL+Win, besides the shorter notation, this can also provide significant performance gains particularly in cases that involve repetitive catenations with large arrays such as inside an iterative control structure (a :for loop).

    See the speedups you can get from using this new syntax!

  4. Added Euro glyph (€) shortcut key

    The new keyboard shortcut is Alt+Shift+W.


  1. Session: New Log File Size setting in the APL Session Log window

    The new setting supports the following:

    1. Impose a Limit on Log File Size
    2. Show Alert Message When Log File Size Exceeds Specified Threshold

  2. ⎕WI Windows Interface: XUExec method on the System object (#)

    The XUExec method executes an APL expression and returns a Variant value from a Unicode-aware client application.

  3. APL+Win Language Help File (aplplang.chm) updated.
  4. Updated APL+Win Fonts

    Below is the list of the updated APL+Win Fonts with the new Commute primitive function and Mismatch operator (copied to the \APLWIN13\FONTS folder by the installer):


  5. WINDOWS.W3 and REL13.W3 Workspaces

    Included support for Windows 8 and Windows Server 2012 operating systems in the GetWinVersion and GetWinVer functions.

Bug Fixes


    Fixed bug that caused APL+Win to hang and become unresponsive when dropping down a style 1 or 2 DateTime control when the Windows visual styles (Themes) are enabled.


    Fixed bug that caused the Option and Check controls to display with a blackened background color when they're children of a style 1, 2 or 3 Frame control and the Windows visual styles (Themes) are enabled. This fix applies to all operating systems except Windows 4P. The workaround workaround for this bug in Windows 4P is to set [Compatibility]TrueChildren=0 in the .INI file or disable Windows visual styles (Themes).


    Fixed bug that caused the tracking window to appear clipped by the edges of the APL Grid.


    Fixed bug that resulted in the very slow performance in the virtualized APL Grid object when copying data to the Windows clipboard.

Please send any questions or comments to

APL2000 Technical Support