Adám Brudzewsky

Adám Gall Brudzewsky is a lifelong APL programmer, founder of the APL Orchard, and the creator of Extended Dyalog APL and APLcart. An employee of Dyalog Ltd., Brudzewsky has made several contributions to the Dyalog APL language in addition to his work on components of the interpreter written in APL such as user commands.

Brudzewsky was taught APL by his father, Henri Brudzewsky, and preferred it to mathematical notation as a student. He was hired by Dyalog Ltd. in May 2015, and worked closely with Dan Baronet. Brudzewsky quickly had an impact on the langauge, suggesting the Nest, or Enclose if Simple, primitive and later working to design Dyalog's array notation.

Since creating it in 2018, Brudzewsky maintains Extended Dyalog APL, a cover over Dyalog APL which uses APL models to extend existing primitives and implement new ones. The extensions include both functionality taken from other APLs and new functionality, and are sometimes adopted by Dyalog or dzaima/APL. The Constant operator appeared first in Extended Dyalog, as did the versions of Atop and Over  later implemented by Dyalog (Brudzewsky's changes relative to Sharp APL were to exchange the glyphs, and remove the concept of close composition). dzaima/APL has adopted Extended Dyalog's Pair, Select , and Reverse Compose.

Brudzewsky is active in the APL Orchard and on Stack Exchange's Code golf site as Adám. Because of his participation in these sites he was involved in Dyalog's hiring of interns Marinus Oosters, Will Robertson, as well as employees Nathan Rogers and Rodrigo Girão Serrão (who started as an intern).

Publications

 * "TAO Axioms" (with Jay Foad and Roger Hui).
 * APLcart, a searchable list of answers on "how-to" questions.
 * APL style guide to improve readability and maintainability.
 * APL tips for using Dyalog APL.
 * Dyalog Blog: Enhanced Debugging with Function Keys
 * Dyalog Blog: Enhanced Debugging with Function Keys – Evaluate selection

Dyalog user meetings

 * Dyalog '15 D05: User Commands Update (with Dan Baronet)
 * Dyalog '15  D10: MiServer UI Controls (slides) (with Dan Baronet)
 * Dyalog '16 D04: Tools Group Update (with Brian Becker and Dan Baronet)
 * Dyalog '17 D11: Literal Notation for Arrays and Namespaces (slides)
 * Dyalog '17  D12: Try APL Online (slides) (with Brian Becker)
 * Dyalog '17  D16: User Command Developments (slides) (with Michael Baas)
 * Dyalog '18 D04: Array Notation Mk III (slides)
 * Dyalog '18  D12: Jupyter Notebooks (slides)
 * Dyalog '19 D05: Link (materials (zip file)) (with Morten Kromberg)
 * Dyalog '19  U14: APLcart: A Novel Approach to Finding Your Way in APL (slides (zip file))
 * Dyalog '20 D09: Array Notation RC1 (slides)

Webinars

 * APL CodeGolf Autumn Tournament
 * Namespace-Directory Synchronisation (with Morten Kromberg )
 * Total Array Ordering (with Jay Foad)
 * Creating and managing your own User Commands
 * Jupyter Notebook support for Dyalog APL
 * Progressive set functions
 * Meet the new APL Wiki (BAA Webinar)
 * Language Features of Dyalog version 18.0 in Depth - Part 1
 * Language Features of Dyalog version 18.0 in Depth - Part 2
 * aplcart.info turns 1 (BAA Webinar)
 * Language Features of Dyalog version 18.0 in Depth - Part 3
 * Language Features of Dyalog version 18.0 in Depth - Part 4
 * Language Features of Dyalog version 18.0 in Depth - Part 5
 * Error Handling - Part 1