APL+Win 14.1

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

To download this release, visit and and click "APL+Win v14.0.0x to v14.1 Update" or "APL+Win v14.1 installer".

The APL+Win 14.1 includes the following enhancements/bug fixes:


  1. Enhancement 1: Support for more APL primitives in in-place assignment

    The previous enhancement to support in-place assignment with catenation is now expanded to support arithmetic functions like plus, minus, times, divide and etc. and also logical functions like and, or, equal, not equal and etc.
    Syntax: larg {primitive} ← rarg
  2. Enhancement 2: New ⎕NFE System Function

    This system function supports reading and writing of text to files using different encoding types.
    Refer to "Chapter 8: Native File with Encoding" in the System Functions Manual for further details.
  3. Enhancement 3: Update to the apldata property

    The apldata property has been updated to support passing of an enclosed numeric array between the APL+Win client and APL+Win ActiveX server without changing the data's rank and/or shape.
  4. Enhancement 4: New updates to the APL+Win C# Script Engine (CSE)

    This version of the APLNext C# Script Engine requires APL+Win v14.1.01 (or above) and the APLNext C# Script Engine v1.0.108 (or above).

    • The use of multiple APL+Win executable statements separated by the APL+Win diamond statement separator on a line of a CSE script prefixed by APL: is now supported
    • If an APL+Win exception is thrown by an APL+Win function on a line of a CSE script prefixed by APL:, the ⎕DM result in the APL+Win session will no longer contain the suffix ⋄0 0⍴0
    • The CSE ExecStmt and GetValue methods are enhanced to provide for value substitution of APL+Win scalar value types into the C# executable statement argument to these CSE methods.
    • The APL+Win C# Script Engine Manual.pdf document and code samples folder has been extensively updated:
      • Example #172
        illustrates setting the value of a C# instance class using the CSE SetValue method.
      • Example #173
        illustrates setting and getting the value of a C# character vector using the CSE ExecStmt, GetValue and SetValue methods with the .Net String.ToCharArray() method and the new String(char[]) constructor.
      • Example #174
        illustrates multiple APL+Win executable statements on a line in a CSE script prefixed by APL:.
      • Example #175
        illustrates using the SQLite ADO.Net provider in APL+Win via the CSE.
      • Example #176
        illustrates using the System.Numerics.BigInteger .Net namespace for variable precision arithmetic.
      • Example #177
        illustrates scalar value type substitution of APL+Win values with the CSE ExecStmt and GetValue methods.

Bug Fixes

  1. Bug Fix:
    The :TRY control structure now works when an error occurs in a User Command function.
  2. Bug Fix:
    Change: ]USAVE User Command ⎕MOM and ⎕UCS objects are no longer saved in a User Command file.

Please send any questions or comments to APL2000 Technical Support