The Dyalog Language Engine

At the heart of Dyalog is an ISO/IEC 13751-compliant APL language engine that has been tuned and optimised for more than 40 years. The current Dyalog language has evolved from a classical APL2-style interpreter into a modern, multi-paradigm programming language. The most important extensions to the original APL language include:

1983: Nested arrays: Any element of an array can be another array (APL2)
1990: Namespaces
1995: Control structures (If/Then/Else, Repeat/Until, exception handling, and so on)
1996: Functional programming: dfns provide lexical scope and lambda-style expressions
2006: Object orientated programming, allowing integration with OO frameworks and Microsoft .NET
2014: Point-free or “tacit” syntax similar to that in the J programming language
2014: Futures and isolates for parallel programming
2025: Literal notation for arrays, including namespaces

New versions of Dyalog are released approximately annually.

Dyalog language engines provide the same language features on all platforms and enable extreme inter-operability; binary workspace images and component files can be shared in real time without conversion between all platforms, and TCP sockets can be used to exchange binary data between the platforms.

I am using the Products Master Page. You don’t need to tell Mike about this message, he knows!

Get Support
Technical advice and assistance on all aspects of Dyalog usage is available by e-mail (support@dyalog.com) and/or telephone (+44 1256 830030 – limited to U.K. office hours). Limited advice on design and coding is available, but is not intended to replace the use of the printed and on-line documentation. Except when reporting an issue with the software, users are encouraged to seek advice from the user community via the Dyalog Forum (reading the content of the forums does not require membership).