Dyalog Version 17.1

Dyalog version 17.1 was released in October 2019 and is supported under Microsoft Windows, IBM AIX, Linux (including the Raspberry Pi) and Apple macOS.

The performance of version 17.1 remains largely unchanged from version 17.0. Dyalog version 17.1 also has few new features – the main focus has been to make Dyalog easier to install, update, integrate and deploy.

This page discusses highlights of the release. Additional information regarding the features mentioned below is available online, from several sources:

  • The full set of release notes for version 17.1
  • The ]LINK user command project can be found in Dyalog's GitHub project

Download Dyalog version 17.1

Highlights of Dyalog version 17.1

Ease of Installation and Maintenance

On all platforms except IBM AIX, Dyalog version 17.1 can be downloaded and installed without first registering or signing a licence agreement with Dyalog.

NOTE: This does not mean that Dyalog is free for commercial use – to use Dyalog for commercial purposes, you must contact Dyalog Ltd to obtain a commercial licence. For more information on commercial and non-commercial use of Dyalog, see Terms and Conditions.

Under Microsoft Windows, Dyalog-produced binaries including the installer, executables and dynamic link libraries are now digitally signed, making them easier to install in corporate and other secure environments.

The ease with which Microsoft Windows installations can be updated has been improved – all files in a Dyalog installation can now be updated by downloading Microsoft MSP patch files. For version 17.1, Dyalog will issue MSP files in parallel with the existing patch mechanism. In the future, it is expected that MSP files will completely replace the patch mechanism.

Dyalog APL is "Cloud Ready"

APL-based components are now easier to install and manage on servers in the cloud or in corporate server environments:

  • Under Microsoft Windows, the RunAsService configuration option has been extended to allow Dyalog for Windows to be started with the GUI disabled. In this mode, Dyalog consumes significantly fewer system resources, allowing a much larger number of service processes to be started simultaneously on a Windows Server.
  • Non-Windows versions that are started without a terminal attached ("headless") can now always be debugged using the RIDE. Output from headless instances of APL can produce redirected output that is free of terminal control sequences.

Dyalog has published Docker Containers on https://dockerhub.com, making it straightforward to launch applications based on Dyalog version 17.1 for Linux on any real or virtual Linux machine. This includes containers that provide pre-configured web servers (based on MiServer) or web services (based on JSONServer) – including ODBC driver support.


For decades, Dyalog APL has provided tight integration with standard application interfaces such as COM and the Microsoft.NET framework but only under Microsoft Windows. In version 17.0, a prototype of a new wrapper was provided, making it possible to wrap APL applications in standard C-style libraries (Dynamic Link Library or Shared Object files). Version 17.1 provides a significantly enhanced version of this mechanism, with sample applications including a framework that can be used to easily turn any APL workspace into a library from which APL functions can be called with arguments and results passed in the form of JSON strings.

Cross-Platform UI

The HTMLRenderer is a new mechanism for creating identical graphical user interfaces (GUI) on multiple platforms. It was first made available with Dyalog version 17.0 (for macOS and Microsoft Windows) and allows APL applications to make use of the Chromium Embedded Framework (CEF) to render HTML/JavaScript based user interfaces. Version 17.1 provides significantly enhanced support for the CEF and adds GNU Linux to the list of supported platforms. In addition to being more robust, the version 17.1 HTMLRenderer adds support for WebSockets and a Certificate Selector which facilitates the embedding of components that require encrypted communications into an HTMLRenderer-based GUI.

A new user command, ]Html makes it easy to render the results of functions that generate HTML (including SVG) under both the Microsoft Windows IDE and the RIDE. The new ]Plot user command makes use of the same technology to generate and display SharpPlot graphics from Dyalog running on any platform.

Source Code Management

Dyalog version 17.1 includes the "Link" system, which can be used to establish (optionally bi-directional) synchronisation between code in the workspace and text files. The ]LINK group of user commands makes it simple to store APL source code in Unicode text files, which are typically managed by Git or SVN. Functions can either be edited in the workspace using the internal Dyalog editor, or using external editors to edit the text files – whichever method is used, the source file and the version in the workspace are kept in synch.

The ]LINK group of user commands includes experimental support for an Array Notation for representing APL array constants in text-based source files.

Open Source Projects

An increasing number of the tools that are written in APL and included with Dyalog are provided as open-source projects in Dyalog's GitHub project. Users can elect to use the fully-supported versions of the code (which are installed with Dyalog) or they can download/clone the GitHub repositories if they want to use the latest versions of the tools or contribute to the projects. This includes the Link project for source code management.



Visit the Documentation Centre for the complete release notes and documentation for Dyalog version 17.1.


Download Dyalog version 17.1

Download the Dyalog version 17.1 highlights as a PDF