Dyalog Version 14.1
Dyalog version 14.1 contains a number of significant enhancements which aim to increase developer productivity, hardware utilisation, scalability and the security of your applications. Highlights include:
Dyalog for Mac OS
- Mac OS has joined the family of fully-supported platforms. Dyalog for Mac OS includes many of the same libraries and interfaces as Dyalog for Microsoft Windows and Linux, including user commands, SALT, TCP support (Conga), the MiServer web server/service framework and the R interface. ODBC support (SQAPL) for unixODBC drivers will follow soon.
Cross-platform Graphical Development Environment
- Synchronised with the release of Dyalog version 14.1 for Mac OS, the Remote Integrated Development Environment (RIDE) is now generally available under Microsoft Windows, Linux and Mac OS. RIDE can connect to Dyalog running on any supported execution platform and is the IDE of choice for Dyalog on Mac OS and Linux. The "classical" IDE remains the tool of choice for the development of Microsoft Windows applications, but RIDE is also available for Windows for use as a front end for AIX or Linux servers – or as a remote debugger for Windows services.
To use RIDE, please email firstname.lastname@example.org.
Enhancements Targeting Microsoft Windows
Although support for new platforms has been one of the main themes for Dyalog version 14.1, we have also done significant work targeting Dyalog for Microsoft Windows. Specifically:
- An installer that allows the Dyalog version 14.1 development environment to be installed on Microsoft Windows without administrative privileges is currently available on request from email@example.com; it will be included in standard builds very shortly.
- Improved support for WPF and Microsoft .NET through enhancements to databinding and a new :Disposable control structure for managing the lifecycle of Microsoft .NET objects.
- Support for high DPI screens and touch-driven input events has been added to the built-in Win32 GUI toolkit (⎕WC).
- Enhancements to the Windows IDE for viewing ⎕WC events
As always, performance enhancements represent a significant part of the work done to produce any new release of the Dyalog engines:
- Several primitive functions/operators and idioms have been redesigned, including ≢⍴, ⊣/ and ⊢/
- Special code has been added for the (?⍴) train, ∧.=, ∨.≠, ∘.=, n⍴scalar, partitioned enclose and grade on Booleans.
- The compiler now supports the most frequently used control structures and references to global variables and functions.
- The usability of futures and isolates has been enhanced by making it possible to designate service threads as uninterruptible.
- For applications with large bodies of code, the ability to store application code in memory-mapped external workspaces can significantly reduce application start-up time. This can be used to launch isolates quickly, but also has significant implication for start-up times and reduces the overall memory consumption of large legacy applications (in particular when several users are hosted on Citrix or other multi-user server platforms).
- Conga can now create and validate secure connections using certificates saved in the Microsoft Windows Certificate Store.
- Conga-based servers can filter incoming connections based on the IP (v4 or v6) address of the client requesting the connection.
- A new JSON parser and generator to translate JSON to and from several different APL-friendly formats, including namespaces and nested arrays.
- Sensitive information can be cleared from memory after your application finishes manipulating sensitive data.
- Enhancements to the Editor and Tracer.
Full documentation for this release, including Release Notes, can be found in the Documentation Centre.