Dyalog ’23 Videos: Week 3 – Dyalog Core Development

This week’s collection consists of presentations by members of the development team, and concentrates on language features and development tools that the developers are currently designing or already implementing. Many of these features are likely to be in version 20.0 of Dyalog, which we plan to release in early 2025, about a year after version 19.0 becomes available. In other words, there is still time to comment on these ideas and propose changes or additions…please take a look and let us know your thoughts!

John Daintree presents an update to the design (and prototype implementation) of so-called Token-by-Token (TBT) debugging, which will make it possible to step through code one primitive at a time rather than one line at a time. This promises to be a wonderful teaching tool, and will also help experienced users debug complex expressions – especially trains and other tacit constructs.

In the presentation on “Setting and Getting Variable Values”, Adám Brudzewsky proposes extensions that will simplify (and speed up) a number of frequently-occurring patterns, where application code needs to reference or update variables based on arrays containing variable names. At the moment, most solutions require complicated, inefficient, and uncomfortable uses of the execute primitive (which some code scanners might identify as potentially unsafe).

Adám’s second presentation also proposes ways to simplify frequently-occurring use cases, this time related to a relatively recent addition to the Dyalog language, the key operator (). Similar to an SQL “group by” clause, key performs operations on groups of data that are partitioned using key values – and it suffers from similar issues if you want the results to be in a particular order, or include entries for key values that do not occur in the data which is at hand.

Peter Mikkelsen proposes a new mechanism for making shell commands from Dyalog. Rather than extending the existing mechanism (⎕SH and its synonym ⎕CMD), which is widely used by existing code bases, Peter proposes a new system function that will manage both binary and encoded input and output, and include features such as whether to error on a non-zero exit code and ways to redirect input and output

The final talk in this block is by Kamila Szewczyk, a student from Saarland University, who was an intern at Dyalog Ltd this summer. In this whirlwind talk, she covers her implementation of a prototype of an APL Array Notation deserialiser, which will be available as an I-Beam in version 19.0, and probably used by Link 4.0. When she needed a break from that project, she created internal experimental builds of the interpreter to try out a large number of interesting ideas that are present in other array language implementations, such as automatic numerical differentiation, the obverse operator, and a monadic inner product where, for example, -.× computes the determinant.

——————————————

This week’s videos:

Materials for all presentations can be downloaded from the Dyalog ’23 webpage.

Dyalog ’23 Videos: Week 2 – APL Problem Solving Competition

The section that is dedicated to the annual APL Problem Solving Competition is always one of my own favourite parts of a Dyalog user meeting, and the talks by the two winners this year were no exception. It is always a treat to hear about how the student winners are able to go from zero knowledge about APL to delivering very well designed, array-oriented, solutions in a few weeks, sometimes days!

This year, we were very pleased to have both the student grand prize winner Andrea Piseri and the professional winner Alexander Block present. Andrea is studying mathematics at Università degli Studi di Milano (University of Milan) and Alexander is an actuary at the Viridium Insurance Group in Germany.

Before Gitte Christensen presented the prizes to the winners and they gave their talks, our “Chief Problem Maker” Brian Becker gave us a brief history of the competition and overview of the contest website (which uses Dyalog-grown tools). He also mentioned that we are revising the format of the competition, most likely by running simpler/smaller problem sets at a higher frequency. We’ll be making official announcements about that early in 2024.

Read more about this section of the user meeting in our Dyalog ’23 daily blog post.

——————————————

This week’s videos:

Materials for all presentations can be downloaded from the Dyalog ’23 webpage.

Welcome to the Dyalog ’23 Videos!

Welcome to the 2023 edition of the Dyalog user meeting presentation recordings. This year, we plan to release a few talks each week until the Winter Solstice – and I will be doing my best to introduce each block of related talks.

Week 1 – A New CEO!

For the 19th year running, the annual Dyalog user meeting started with CEO Gitte Christensen’s Welcome, followed by my own Technical Road Map presentation. However, all is not as it has been: this year, Gitte opened the user meeting with the announcement that she intends to retire from her role as CEO when she turns 70 at the end of this year. The final presentation in this first block is by our incoming CEO, Kirstine Kromberg, and our new Administration Assistant, Jada Andrade, who closed Dyalog ‘23 with a presentation of the vision for the future of Dyalog Ltd.

The similarity between my name and that of the new CEO is not a co-incidence – she is the daughter of the current CEO and CTO. Kirstine (Stine for short) has an MBA in Business Administration and Information Technology from Copenhagen Business School, and everyone believed she was destined to become a manager at one of the large Danish shipping or pharma companies. However, after Stine’s second maternity leave, she discovered that returning to her job as a business consultant would mean twiddling her thumbs until the consulting market picked up again after the Covid pandemic. At the same time, the search for a new CEO for Dyalog Ltd had started.

Stine has been working for Dyalog Ltd for almost four years now, learning how everything works as an accountant and CFO and running several internal projects both on the administrative and technical side of the business. This experience confirmed to us – and to the board, where half of the directors represent our largest clients – that she could strike the right balance between preserving continuity and having the “change management” skills that are required as we grow beyond 25 full-time employees.

As you will see if you watch my presentation, I have a long list of features that I want to see in Dyalog before I retire – and since everything takes longer than I think, I expect to be around for quite some time! Uncharacteristically, both the first and the last talk mention money: Gitte introduces “The APL Fund”, which will allow successful APLers to contribute to the future growth of APL, and Jada speaks about the new prices for Dyalog licences (effective from 01 January 2024). Except for an initial adjustment when Gitte and I joined Dyalog Ltd, the price of a licence has not changed in the 19 years that Gitte and I have been with the company (don’t worry, they are not changing significantly now unless you are still running a 32-bit version!).

I hope you enjoy watching the first set of recordings from Dyalog ’23!

——————————————

This week’s videos:

Materials for all presentations can be downloaded from the Dyalog ’23 webpage.

Dyalog ’20 – Recordings Now Available

We are happy to announce that the full set of recordings from Dyalog ’20 online is now available. So if you missed the all or any of the talks, or would like to revisit one of the presentations, head over to https://dyalog.tv/Dyalog20!

It was disappointing not to be enjoying Portuguese food and drink with you all in Olhão. On the other hand, it was wonderful to be able to share our plans and user stories with so many people who would not normally be able to travel to one of our user meetings. According to the statistics, we had about twice the usual number of attendees, and Dyalog ’20 may have been the largest gathering of APL users in the last quarter century!

We learned that we need to invest in better microphones and find better solutions for chat both during and between the presentations, but in general we feel that the online format worked so well that we are making plans to run similar events in the future, even if international travel restrictions should ease and we are able to meet many of you face to face in Portugal this coming October. We are still thinking about the details, but it is likely that we will host an online meeting each spring with a focus on new users of Dyalog APL, while the autumn (fall) meeting will continue to provide experienced users with the usual “deep dive”.

We are also planning to offer workshops and other training sessions at other times of the year, and continue the regular series of webinars. Travel restrictions are helping to accelerate our plans to provide a steadily increasing quantity of online material. If there is sufficient interest, I am willing to expand my talk on Docker containers into a half-day “Bring Your Own Application” workshop early in 2021. If you would like to attend this workshop, or you have ideas for other topics for webinars, workshops or talks at future user meetings, please write to usermeeting@dyalog.com and tell us about it!

Warming up to Dyalog ’20 Online with the last Recording from Dyalog ’19!

Three weeks from today, Gitte Christensen and I will be opening the 2020 Dyalog user meeting. Like so many similar gatherings, we are moving online; this year’s meeting will consist of two 4-hour sessions on Monday 9th and Tuesday 10th November, running from 14:00 to 18:00 UTC. Our hope (so far confirmed by advance registrations) is that this format will allow many more people to attend than a normal meeting, which requires you to set a full week aside and spend money on travel. We hope that the timing will allow attendance from a large part of the globe, and of course it is our intention to make recordings available afterwards for those unable to attend live.

I do subscribe to the proverb about all clouds having silver linings: although all the user meetings that I usually travel to attend have been cancelled or postponed, and I have missed meeting many of you face-to-face this year, it is important to note the unexpected side-effect; there is significantly more APL content being generated and made generally available than ever before! I hope that you have all noticed that Dyalog and the British APL Association have been holding online sessions every two weeks since the spring! A good place to keep track of these events is our event calendar at https://www.dyalog.com/dates-for-your-diary.htm.

Two four-hour sessions is obviously a lot less than the usual 3.5 days plus workshops. You should be able to find a good deal of the “missing” material, such as Adam Brudzewsky’s five-part series on features of Dyalog Version 18.0 (and my own introduction to the new release) at https://dyalog.tv/Webinar, where you can watch it at your leisure.

During Dyalog ’20 we will focus on giving you updates on the most important activities that the team behind Dyalog APL is currently working on. Also, although you may have to wait for Dyalog ’21 in Portugal to meet the winner of the APL Problem Solving Competition in person, Andrii Makukha from the University of Hong Kong will be giving his acceptance presentation online on the Tuesday. Chris and Michael Hughes will give us an update on a tool called qWC, which simplifies the transformation of existing Windows applications into web apps.

Calculating estimates for the paths of debris from M/S Irma.

Calculating estimates for the paths of debris from M/S Irma.

At Dyalog ’19, Tomas Gustafsson, author of the stunning Stormwind boat/ship simulator (real time physics engine implemented in Dyalog APL) told the story of the successful search for the M/S Irma, which was was lost in a sudden autumn storm between Finland and Sweden 50 years ago. Because a Finnish TV channel was producing a programme about the Irma, Tomas asked us not to publish the recording of his presentation last year. The embargo has finally been lifted, and we are now able to present the final recording from Dyalog ’19. In Tomas’ Dyalog ’19 video, you can hear Tomas tell the story of how, despite massive search efforts, said to be the biggest ever in Finnish history, the Irma accident became a mystery. No distress signals were heard during that fatal autumn night, and Irma had chosen the weirdest routes. Only one body was ever found, days later, at an unexpected location. Wreckage from the ship was discovered in the archipelago at multiple contradictory spots. Irma was found in May 2019 by a group of enthusiasts (including Tomas). The reverse drifting patterns calculated using Dyalog played a crucial role in the success of the search. Tomas will be back at Dyalog ’20 to entertain us with the story of his latest adventure: the search for a 500-year-old wreck, the Hanseatic hulk Hanneke Vrome, which left Lübeck at the brink of winter in 1468, to avoid Danish pirates.

I look forward to welcoming you to Dyalog ’20 on November 9th.

Dyalog ’19 Videos: Week 10

The release of the final set of videos from the Dyalog ’19 user meeting in Elsinore slipped into 2020, thus providing me with a perfect opportunity to wish you all a Happy New Year from all of us at Dyalog! We are wrapping up with recordings from the Prize Ceremony for the 11th annual Problem Solving Competition and the the Young APLers’ Panel.

The young APLer’s panel. From left: Stephen Taylor, Alve Björk, Yuliia Serhiienko, James Heslip and Josh David

I can’t think of a better way to kick off the new year than watching newcomers to APL talk about how they got started! With Stephen Taylor as host, our panellists Alve Björk (Uppsala University, Sweden), James Heslip (Optima Systems Ltd, UK), Josh David (Dyalog Ltd, USA) and Yuliia Serhiienko (SimCorp, Ukraine) discuss how they first encountered APL, their perception/experience of the language and what they would like to see APL vendors and the APL community working on in the future.

Every year, the annual APL Problem Solving Competition entices students to learn APL and try to win significant cash prizes and a trip to the Dyalog user meeting. This year, Dyalog brought the entire contest “in house” rather than using an external company to host it. We developed our own interactive contest site, which allowed contestants to get immediate feedback on potential solutions to Phase 1 problems. In addition to making it more fun – and a lot easier – to submit solutions, the new site saved Dyalog a lot of time by pre-verifying Phase 1 solutions. As Brian Becker explains in his talk leading up to the prize ceremony, the project gave us an opportunity to test a lot of our own components by building a fully operational application entirely in Dyalog APL. Gitte Christensen, CEO of Dyalog Ltd, awards the prize for the best professional entrant to Torsten Grust and the grand prize to Jamin Wu.

Grand Prize winner Jamin Wu

I never cease to be amazed by the quality of presentations by winners of the contest. The youngsters of today seem able to learn to write APL code that many professionals would be proud to have written, in a few weeks – sometimes only days.

Jamin Wu is a medical student at Monash University in Australia, but also a keen programmer. His presentation on how he won the 11th annual APL Problem Solving Competition was one of the clearest and most impressive acceptance speeches by a winner of the competition that I have had the privilege to attend. In a very short amount of time, Jamin has been able to get an astonishing grip on the benefits of APL, and write some of the most elegant APL code I have ever seen. We’re sad that he won’t be joining the community as a full-time APL programmer any time soon; the good news is that the medical community in Australia will soon have a very competent young doctor, able to use computers very effectively to assist him in research and analysis of data!

Summary of this week’s videos:

 

That is (almost) the end of the Dyalog ’19 videos; at Tomas Gustafsson’s request, we are holding back the release of his exciting yarn about how APL was used to locate the wreck of the M/S Irma until the upcoming documentary has been aired on Finnish TV.

It is already time to think about Dyalog ’20, which will be held in Olhão, Portugal, from 11th-15th October. Follow us on social media (Facebook, Twitter, LinkedIn) to be kept informed about this and all things related to Dyalog!