Version 12.1
Version 12.1 is packed with new features and performance enhancements.

A brief summary of new features follows below. For detailed information about the new release, see:
Supported Platforms
Version 12.1 is available in Classic and Unicode editions, for 32- and 64-bit versions of Microsoft Windows (supported on Windows 2000 and later versions, including Windows 7), IBM AIX (from version 6.1 – 32 bit also from 5.3 TML10) and Linux (tested on RedHat4&5, SUSE 11, openSUSE 11.1 and Ubuntu 8.04).
A version for Windows Mobile (Unicode/32 bit only) will be available at the end of 2009. Contact Dyalog for information on Sun Solaris versions.
No versions using the MainWin Win32 emulator have yet been built: Please contact Dyalog for information on the release schedule for versions using MainWin and WINE (an alternative Win32 emulation, available for Intel Linux only).
Customers with current DSS+ contracts or royalty-based agreements can download the 32-bit Windows version immediately here. For other versions, please contact Dyalog Support for more information.
Termination of Support for Version 10.1
Dyalog provides support for the current release plus the two previous releases. In practice, this means that fixes for significant bugs found in any supported version are applied to all supported versions – and that patched versions are automatically made available to customers paying for support. With the release of 12.1, version 11.0 becomes the earliest supported version. Dyalog will attempt to provide reasonable support for older versions, but may charge a fee for the application of fixes to unsupported versions if required.
Overview of New Features
Each of the following features is described in detail here (follow the links at the end of each section):
Enhanced Editor
The Editor has been enhanced to improve the ease with which individual functions and classes can be edited. More

Table function
The new Table function (monadic ) turns any array into a 2-dimensional matrix. More
Fast XML Conversion
The XML system function converts an XML character vector into an APL array and vice-versa. As a built-in system function it is naturally much faster than an equivalent defined function written in APL. More
Faster Primitive Functions
A number of primitive functions have been modified to deliver significantly improved performance. Beta Test users have reported speedups of up to 25% on migration to version 12.1 (others have not noticed any difference – your mileage will vary) More
Parallel Execution on Multi-cpu / Multi-core Systems
If your computer has more than one cpu or is a multi-core processor, many scalar dyadic functions now execute in parallel in separate system threads each running on a separate cpu or core. This delivers very significant performance on large arrays. More
Component File Journaling and CheckSum
Version 12.1 provides enhanced Journaling for Dyalog APL component files and includes the facility to checksum components. More
User Commands
Version 12.1 provides an easy mechanism to define User Commands.
A User Command is a name prefixed by a closing square bracket, which may be niladic or take an argument. A User Command executes APL code that is typically stored somewhere outside the current active workspace. More
Standalone Executables
In Version 12.1 it is possible to export a workspace as a single .exe file that includes a copy of the Dyalog APL interpreter. This allows you to implement and deploy a stand-alone Dyalog APL application as a single .exe file. More
.Net Controls
Whereas previously it was possible to use Microsoft .Net GUI by creating a .Net Form and populating it with .Net controls, it was not possible to mix .Net GUI components with the Dyalog APL GUI.
In Version 12.1, the new NetControl object allows you to include any control that derives from System.Windows.Forms.Control as a child of a Dyalog APL GUI container such as a Form, SubForm, or Group. More
using←'System.Windows.Forms,system.windows.forms.dll'
'f' wc'Form' ('Coord' 'Pixel')
'f.wb' WC'NetControl' 'WebBrowser' ('Size' f.Size)
f.wb.Navigate ⊂'aplwiki.com/CategoryDyalog' Display APLWiki
Many .Net controls can also be used as input objects for the Dyalog Grid.
In addition classes defined within the workspace that derive from System.Windows.Forms.Control can also be embedded into the Dyalog GUI. More
Tracer Syntax Colouring
The Tracer may now optionally be coloured in the same way as the Editor. If you choose this option, the appearance of a function inside the Tracer window is almost identical to that of the Editor. The only difference is that the current line is identified by a bright red rectangle. More
Keyboard Changes
The default keyboard layouts shipped with version 12.1 interpret Ctrl X-C-V as Cut-Copy-Paste. To get disclose, intersection and union, you need to use Ctrl+Shift. The "IME" has been re-introduced for use with applications which would otherwise hijack APL symbols as accelerator keys. More |