Welcome to the wonderful world of APL programming!
APL is quirky, different, and not like the other programming languages.
One December, I participated in the Advent of Code. Like a traditional advent calendar, every day had something new, but instead of a small treat they were small programming projects. Fun!
There were two Christmas-themed challenges per day, leading to a grand total of fifty by the end of December.
Throughout the month, so-called solutions like these were posted.
east ← ⊢{(⍺+¯1⌽⍵)-⍵} 0∘<∧0=1∘⌽ ⍝ (1)!
- Example taken from https://github.com/pitr/aoc/blob/main/2021/25.apl
I was baffled. These were meant to be solutions to the AoC problems. However, I couldn't see how they could possibly represent any kind of algorithm, much less a solution.
Turns out, they were written in a language called APL.
APL
APL stands for...
A
Programming
Language.
No false advertising here!
Out of curiosity, I tried finding APL solutions to the AoC challenges after Christmas had passed. At one point, I found a solution that spanned just 50 lines. Python solutions to the more difficult challenges are usually around 150 lines long. In its 50 lines, the APL solution apparently solved all the problems!
It was astounding.
APL looks different, feels different, and challenges the way you think about programming.
I hope that this course will expand your mind and let you approach programming from a whole new perspective.