Dyalog Presentations
D01: Welcome to Dyalog '21 summary | slides (PDF) | video (9 mins)
Gitte Christensen, Managing Director (CEO)
Dyalog '21 will be different to previous Dyalog user meetings (except Dyalog '20!), but some traditions will survive...Dyalog Ltd's CEO opens the user meeting.
D02: The Road Ahead summary | slides (PDF) | video (33 mins)
Morten Kromberg, Technical Director (CTO)
Before presenting his view of the road that lies before Dyalog and users of Dyalog APL, Morten spends a little time talking about the year that has passed, and explains why the release of Dyalog APL that follows after 18.0 will be numbered 18.2.
D03: Scripting in Dyalog v18.2 summary | slides (PDF) | slides (PPSX) | video (29 mins)
John Daintree
Dyalog v18.2 supports the use of APL as a scripting language, a feature that John previewed in a talk at Dyalog '20. This year, John shows us what actually made it into the product, and revisits the extended multi-line session input that makes scripted APL much more powerful. He also discusses the difficulties of debugging scripts, and introduces a new I-beam that removes some of that pain until it is possible to attach the RIDE to failing script interpreters.
D04: Support for Statistical Distributions in Dyalog v18.2 summary | slides (PDF) | video (18 mins)
Ron Murray
Sampling from non-linear distributions is important for Monte Carlo simulation processes. Ron reviews the distributions for which Dyalog supports direct sampling through 16808⌶ and demonstrates how to sample distributions using Dyalog's interface to the R programming environment.
Useful links: Workspace for presentation examples on GitHub | Kimmo Linna's Dyalog-R interface on GitHub
D05: ⎕JSON Table Support summary | slides (PDF) | video (26 mins)
Richard Smith
The ⎕JSON system function provides efficient conversion between JSON-formatted text and APL arrays (including namespaces). However, APL developers use a variety of data structures to store two-dimensional tables, and these do not fit neatly into the non-APL world. Richard explains the extensions made to the ⎕JSON system function for Dyalog v18.2 that enable the JSON representation of APL matrices in ways appropriate for non-APL applications and developers using JavaScript and "similar languages" to understand them.
D06: Highlights of Dyalog v18.2 summary | slides (PDF) | video (31 mins)
Adám Brudzewsky
Dyalog v18.2 includes several new productivity tools and quality-of-life improvements, intended for both professionals and beginners. Adám presents some of these, and shows how programming in APL can now be more fun than ever.
D07: Link v3.0 summary | slides (PDF) | video (29 mins)
Morten Kromberg
Link makes it possible to use text source as the foundation for APL application development, rather than binary workspaces or component files. The first version to see significant use outside Dyalog Ltd. was v2.0, distributed with Dyalog v18.0. Link v3.0 is cleaner, more robust, more capable, and has more comprehensive documentation. If you have not looked at Link yet, this is a good time to start!
D08: Dado (Dyalog APL Development Operations) summary | slides (PDF) | Dado (GitHub) | video (29 mins)
Josh David
Dyalog APL allows you to program at the speed of thought. But wait! Now that you're storing code in text files, you need to learn about source-code management systems and how to come up with an effective workflow in them, how to properly version an application, etc. A non-trivial amount of time must now be spent on daily development operations before you even get to write a line of APL code.
Josh introduces Dado (previously known as AcreTools), an open-source library from The Carlisle Group that takes care of these problems for you. The key functionalities of this DevOps system for Dyalog include:
- streamlined cover functions for git commands
- "one-click" releases to automatically generate release notes, handle application versioning, and upload assets
- dependency management
- a built-in git workflow
This can all be done with a few simple user command functions, without having to leave the Dyalog session.
D09: Python + APL = Py'n'APL summary | slides (PDF) | Py'n'APL (GitHub) | video (28 mins)
Rodrigo Girão Serrão
What happens if you combine the raw power of APL – your tool of thought – with the countless modules that have been produced by the Python community? APL is famous for enabling the rapid prototyping of solutions to whatever problem you decide to solve, and Rodrigo believes that employing this in combination with the Python ecosystem is sure to maximise potential. To prove his point, he demonstrates how you can combine APL for your data manipulation with Python for your other needs.
D10: Packaging Dyalog Tools summary | slides (PDF) | video (32 mins)
Brian Becker
As the number of utilities and utility libraries for Dyalog grows, it's becoming more important for the APL developer to understand how to manage and employ these utilities as packages. A package can be thought of as a utility that you incorporate into your application. Packages can comprise one or more files containing the APL code that implement the utility; they can also have non-APL resources such as shared libraries (.dll files), configuration files, image files, and so on.
Tatin is a package manager for Dyalog APL that has been developed by APL Team and is currently being adopted by Dyalog to package a number of its tools. Tatin helps manage several aspects in the use of packages including:
- Versioning, so that the APL developer can know what version of a package is being used. This is valuable information for support and upgrade purposes.
- Dependencies between packages, so that when a package depends on other packages, the APL developer is aware of any specific version requirements for a package.
Brian provides an overview of Tatin for both consumers (APL developers who desire to incorporate packages into their applications) and authors (APL developers who desire to publish packages for the use of consumers). He demonstrates how Tatin will be used within Dyalog to publish forthcoming versions of Dyalog tools and utilities, and how the Dyalog user can utilise Tatin as a consumer of those utilities in their application development.
D11: APL Media Update 2021 summary | slides (PDF) | video (30 mins)
Rich Park
The world of new media continues to grow for APL and array languages. Rich presents an overview of recent and upcoming publications and events.