APL operators (higher-order functions) offer powerful ways to apply functions to data. While Dyalog provides plenty of powerful operators, you can define your own to accomplish additional tasks. In this webinar, we show the basic syntax of user-defined operators and present a few utilities, compositions, and conceptual tools.
00:00 Introduction 01:42 What is an operator? Operator and derived function valence 05:50 How to define operators, traditional and dops 11:35 _S: Stack arguments on the result of applying a function 15:11 Make an operator derive ambivalent functions 16:50 _T: An operator to trace through an expression function-by-function 18:38 Get the definition of an operand function using ⎕ATX 20:28 _A_: Across: Apply a function with the arguments flipped both ways; apply a function and its commute. Particularly useful with set functions such as ∊ ⍳ ~ 23:56 Reverse-compose AKA Hook to apply a function after pre-processing the argument 28:56 _W_: The While operator as a functional alternative to :While 33:16 _E_: The Error-Else operator to modify behaviour in the case of an error 34:47 Let operators use function or array operands using (⍺⍺⊣⊢) or (⍵⍵⊣⊢) 38:20 _0: Apply non-scalar functions to simple scalars AKA scalar pervasion, like dfns.perv but with selective assignment 42:57 Conclusion
Previous Webinars
User-Defined Operators
Adám Brudzewsky
Getting Data and Code into the Workspace feat. ]Get
Richard Park
New User Commands in Dyalog v18.2
Richard Park
Introducing Dyalog version 18.2
Morten Kromberg
Data Visualisation
Richard Park
Computing Check Digits, Fast
Adám Brudzewsky
Error Handling - Part 5
Adám Brudzewsky
TryAPL v3
Richard Park
Error Handling - Part 4
Adám Brudzewsky
Database Basics
Richard Park
Error Handling – Part 3
Adám Brudzewsky
Drawing the Mandelbrot Set
Rodrigo Girão Serrão
Error Handling - Part 2
Adám Brudzewsky
Boolean Scans and Reductions
Richard Park
Error Handling - Part 1
Adám Brudzewsky
The Rank Operator and Dyadic Transpose
Richard Park
Thinking in APL: Array-Oriented Solutions - Part 2
Richard Park
Language Features of Dyalog version 18.0 in Depth - Part 5
Adám Brudzewsky
Advanced Use of The Rank Operator
Richard Park
Language Features of Dyalog version 18.0 in Depth (Part 4)
Adám Brudzewsky
The Rank Operator
Richard Park
Language Features of Dyalog version 18.0 in Depth (Part 3)
Adám Brudzewsky
Thinking in APL: Array-Oriented Solutions (Part 1)
Richard Park
Language Features of Dyalog version 18.0 in Depth (Part 2)
Adám Brudzewsky
APL and Microsoft Excel
Richard Park
Language Features of Dyalog version 18.0 in Depth (Part 1)
Adám Brudzewsky
Introducing Dyalog version 18.0
Morten Kromberg
Selecting from Arrays
Richard Park
Progressive Set Functions
Adam Bruzewski
Fast APL
Richard Park
Train Spotting in Dyalog APl
Richard Park
qWC (CROSS_PLATFORM ⎕WC) – AN INTRODUCTION AND UPDATE
Chris Hughes
Concluding the 2019 APL Problem Solving Competition
Richard Park
Molecular Dynamics in Dyalog APL
Richard Park
Source Code Management with Dyalog v17.1
Morten Kromberg
Introducing the 2019 APL Problem Solving Competition
Richard Park
TryAPL - The Next Generation
Richard Park
Adventures in Advent of Code
Jay Foad
Jupyter Notebook support for Dyalog APL
Adám Brudzewsky
Cross-Platform Charting
Brian Becker
Acquiring online data using HttpCommand, ⎕JSON and ⎕XML