Home Page Programme Presentations

Dyalog Presentations

D01: Welcome to Dyalog '20 summary
Gitte Christensen, Managing Director (CEO)

Dyalog '20 will be very different to all previous Dyalog user meetings, but some traditions will survive! Dyalog Ltd's CEO opens the user meeting.

D02: The Road Ahead summary
Morten Kromberg, Technical Director (CTO)

In accordance with tradition, Morten will look briefly back over his shoulder before turning his gaze to the future and providing some predictions regarding the road that lies before Dyalog and users of Dyalog APL.

D03: Multi-line Input and Scripting summary
John Daintree

John demonstrates extensions to the session that improve the interactive development of code and multi-line expressions. These extensions lead to the use of APL as a scripting language from operating command prompts.

D04: The .NET Core Bridge summary
John Daintree

The next version of the .NET (Core) Bridge will allow APL code to be exported as .NET Assemblies, which can then be used by other languages on all supported platforms (macOS, Linux and Microsoft Windows). John demonstrates this and discusses some of the differences between the .NET (Core) approach and the existing .NET Framework bridge mechanism.

D05: Time Travel Debugging and Statistical Distributions summary
Ron Murray

Ron has been warming up to his development role at Dyalog by adding a mechanism for generating widely-used non-linear distributions to Dyalog APL. Here he describes the new support that he is adding to efficiently generate random numbers in a variety of distributions (Linear, Normal, Poisson, Gamma, Beta, etc.) as well as presenting some musings on testing.

D06: Reworking Mastering Dyalog APL summary | slides (PDF)
Rodrigo Girão Serrão

"Mastering Dyalog APL" is the de facto standard book to introduce people to Dyalog, even though Dyalog has seen 6 major releases since the book was first published 11 years ago. In this presentation Rodrigo (one of Dyalog's 2020 summer interns) looks at Dyalog's plans for updating and upgrading this valuable learning resource.

D07: Rational Arithmetic summary | materials (zip file)
Roger Hui

Computing with rational numbers opens new vistas. For example:

      +∘÷ \ 10 ⍴ 1
1 2 1.5 1.66667 1.6 1.625 1.61538 1.61905 1.61765 1.61818

      ⍕Q (+Q)∘(÷Q) \ 10 ⍴ qi 1
1 2 3r2 5r3 8r5 13r8 21r13 34r21 55r34 89r55

Roger presents a facility for extended-precision rational arithmetic: a representation for rational numbers, a monadic operator Q for working with rational numbers, and a function qi ("rational input") to specify rational numbers conveniently.

D08: Dyalog's Docker Containers summary
Morten Kromberg

"Containers" are designed to make it easy to build a virtual machine on the fly, containing the operating system and tools of your choice, plus your own software – and keep all of this up-to-date. Dyalog's Docker containers are designed to make this easy when your application is based on Dyalog APL.

Morten provides an update on the containers made available with Dyalog version 18.0, how to build, deploy and debug a service to the cloud, and talks about how work planned for version 19.0 will make them even easier to use.

D09: Array Notation RC1 summary
Adám Brudzewsky

Dyalog is planning a literal notation for arrays, so that you can write things like matrices and namespaces in a more pleasant and readable way than constructing them piecemeal with and ⎕NS. The exact syntax for the array notation has now been finalised and Adám explains it, tells us where it is already in use, and shows you how you can try it out for yourself. You can even win a prize for contributing to its model implementation!

D10: APL Online! summary
Richard Park

Many APL user meetings have been cancelled this year, and Dyalog '20 substantially reduced and held virtually. However, the frequency of APL meetings, and the amount of brand new APL-related content is arguably higher in 2020 than it has been for a long time – it has just moved online. Richard provides an overview of recent online content, and a preview of meetings and webinars to come!

back to top


User Presentations

U01a: How I Won the APL Problem Solving Competition – Introduction summary
Brian Becker

The twelfth annual International APL Problem Solving Competition took place earlier this year. Brian introduces the contest and grand prize winner.

U01b: How I Won the APL Problem Solving Competition summary
Andrii Makukha, University of Hong Kong (China)

Andrii Makukha is the grand prize winner of the twelfth annual APL Problem Solving Competition. Andrii describes his experiences of APL/Dyalog and tells us how he managed to master enough of it to win the competition.

U02: Building Applications using qWC (⎕WC) on the Web summary
Chris Hughes and Michael Hughes, MJH Software Services Ltd (U.K.)

MJH Software Services' qWC emulation of Dyalog's ⎕WC is evolving rapidly. The compiler that it is built on has been speeded up, and qWC now uses new, faster Syncfusion components. It also supports the HTMLRenderer, making it possible to write ⎕WC applications that run under Microsoft Windows, Apple macOS and Linux, as well as phones and other devices where Dyalog APL is not available.

qWC supports a growing number of ⎕WC objects, plus extensions like Charting, based on a ⎕WC-style interface. This presentation shows a simple multi-user application based on the new Chart control, which is traced and stopped to show how it is constructed, debugged and how the data can be manipulated from within a call-back function.

U03: Tracing Hanneke Vrome Numerically summary
Tomas Gustafsson, Stormwind Ab Oy (Finland)

At Dyalog '19, Tomas told the story of how he helped locate the wreck of the M/S Irma, which sank in the Baltic on a stormy October night in 1968 – 50 years ago. This year, Tomas is hunting for a 500-year-old wreck: the Hanseatic hulk Hanneke Vrome left Lübeck at the brink of winter in 1468, to avoid the powerful Danish pirates. Scaled to modern times, the magnitude of the accident is comparable to M/S Estonia. Locating this wreck would be of utmost importance for a better understanding of medieval times around the Baltic Sea.

Tomas walks us through downloading historical weather data (ERA5 reanalysis) from the EU Copernicus programme, converting it into APL arrays and using it to simulate the movement of the ship that was lost in the Gulf of Finland: A case of problem solving using the unbeatable expressivity of APL.

back to top


Copyright and Trademarks

UNIX® is a registered trademark in the United States and other countries, licensed exclusively through X/Open Company Limited.
Windows® is a registered trademark of Microsoft Corporation in the United States and other countries.
Oracle® and Java™ are registered trademarks of Oracle and/or its affiliates.
macOS® and OS X® (operating system software) are trademarks of Apple Inc., registered in the U.S. and other countries.
All other trademarks are the property of their respective owners.

back to top