

The Array Cast
Conor Hoekstra & Adám Brudzewsky
We explore the Array Languages of APL, J, k, q and offshoots. If you are Array Language curious, this is the podcast for you. Occasionally we may dive into the weeds, but most of the time we try to stay accessible to the general listener.
Episodes
Mentioned books

Jul 22, 2023 • 1h 12min
PyTorch and Dex with Adam Paszke
Array Cast - July 21, 2023 Show NotesThanks to Bob Therriault, Conor Hoekstra, and Adam Paszke for gathering these links:[01] 00:01:49 J on AWS https://code.jsoftware.com/wiki/System/Installation/Cloud KXcon '23 videos https://kx.com/kx-con-23-recordings/ KXcon '23 ArrayCast review episode https://www.arraycast.com/episodes/episode54-kxcon23[02] 00:04:10 PyTorch https://pytorch.org/ Dex Programming Language https://github.com/google-research/dex-lang/ Coursera https://www.coursera.org/[03] 00:07:48 Torch7 https://github.com/torch/torch7 Torch https://en.wikipedia.org/wiki/Torch_(machine_learning) Lua Programming Language https://www.lua.org/ Python Programming Language https://www.python.org/ Alpha Go documentary https://en.wikipedia.org/wiki/AlphaGo_(film) Tensorflow Programming Language https://www.tensorflow.org/ LuaJIT interpreter https://luajit.org/[04] 00:15:43 Automatic differention https://en.wikipedia.org/wiki/Automatic_differentiation[05] 00:18:25 GPU https://en.wikipedia.org/wiki/Graphics_processing_unit TPU ht

Jul 8, 2023 • 1h 3min
Learning and Teaching Array Programming
Ken Iverson, a renowned figure in the field of array programming, discusses learning and teaching array programming languages. The speakers explore different approaches to learning array languages and the challenges involved in transitioning from other programming paradigms. They emphasize the importance of mentorship and mention various educational resources. The chapter also delves into the advantages and disadvantages of different teaching methods, including tutorials, videos, and diagrams. The speakers highlight the excitement of working with QV code and the benefits of interpreted array languages. They also touch upon the challenges of working with fixed recordings and the process of choosing between different approaches to problem-solving.

Jun 24, 2023 • 54min
Why We Like Array Programming (Again)
Array Cast - June 23, 2023 Show NotesThanks to Bob Therriault for gathering these links:Opening ‘cow sheep cat dog’Conor Hoekstra ‘Algorithms as a Tool of Thought’Alan Perlis ‘In Praise of APL’KeyUnderNuvoc - J VocabularyHome SitesAPL J k BQN qGetting startedAPL J k BQN qStephen Taylor ‘Discovering APL’

Jun 10, 2023 • 1h 19min
Robert Bernecky
Array Cast - June 9, 2023 Show NotesThanks to Bob Therriault, Adám Brudzewsky, and Marshall Lochbaum for gathering these links:[01] 00:01:35 APL Show https://apl.show/2023/06/02/Terminology-Files-and-Array-Theory.html U-Net CNN in APL: Exploring Zero-Framework, Zero-Library Machine Learning https://dl.acm.org/doi/10.1145/3589246.3595371 Tokyo Meetup https://www.meetup.com/en-US/apl-j-k-meetup/events/kkzgdtyfcjbzb/ Northern California APL ACM Meetup https://apl.wiki/SIGAPL#APL_BUG[02] 00:03:16 Robert Bernecky https://en.wikipedia.org/wiki/Robert_Berneckyhttps://aplwiki.com/wiki/Bob_Bernecky I.P. Sharp Associates https://en.wikipedia.org/wiki/I.P._Sharp_Associates PERT https://en.wikipedia.org/wiki/Program_evaluation_and_review_technique[03] 00:06:57 Bernecky Zoo Story Dyalog https://dyalog.tv/Dyalog16/?v=1N_oYD-ZkX80 Ian Sharp https://www.dyalog.com/blog/2021/07/thank-you-ian-sharp/ Roger Moore https://en.wikipedia.org/wiki/Roger_Moore_(computer_scientist) Speeding up Dyadic Iota and Dyadic Epsilon, 1973 Copenhagen Conference https://www.researchgate.net/publication/242359964_Speeding_up_dyadic_iota_and_dyadic_epsilon[04] 00:10:49 Replicate https://aplwiki.com/wiki/Replicate Partitioned Enclose https://aplwiki.com/wiki/Partitioned_Enclose#Non-Bool

May 27, 2023 • 1h 25min
Review of KXcon’23
Array Cast - May 26, 2023 Show NotesThanks to Bob Therriault, Marshall Lochbaum, Conor Hoekstra, Adám Brudzewsky and Nick Psaris for gathering these links:[01] 00:02:15 Eric's post J Programming Language http://www.jsoftware.com/pipermail/programming/2023-May/062524.html J wiki https://code.jsoftware.com/wiki/Main_Page[02] 00:03:23 Programming language design on StackOverflow https://languagedesign.stackexchange.com/[03] 00:05:04 Phineas Porter's blog post https://iabdb.me/2021/05/28/idempotent-moving-window-is-simply-a-reduction/[04] 00:08:00 ArrayCast Episode 3 https://www.arraycast.com/episodes/episode-02-challenges-facing-the-array-languages ArrayCast Episode 4 https://www.arraycast.com/episodes/episode-03-what-is-an-array ArrayCast Episode 5 https://www.arraycast.com/episodes/episode-04-responding-to-listeners-email ArrayCast Episode 42 https://www.arraycast.com/episodes/episode42-nick-psaris-q "Q Tips" by Nick Psaris https://www.goodreads.com/book/show/25221469-q-tips "Fun Q" by Nick Psaris https://www.goodreads.com/book/show/54656615-fun-q[05] 00:09:40 PyKX https://kx.com/pykx/ Python Programming Language https://en.wikipedia.org/wiki/Python_(programming_language)[06] 00:12:27 peach in q https://code.kx.com/q/basics/peach/[07] 00:16:10 Z compression https://en.wikipedia.org/wiki/Zstd &nb

May 13, 2023 • 1h 13min
What is the Problem?
Array Cast - May 12, 2023 Show NotesThanks to Bob Therriault, Marshall Lochbaum and Rich Park for gathering these links:[01] 00:01:45 Decker https://beyondloom.com/decker/index.html John Earnest Episode 41 https://www.arraycast.com/episodes/episode41-john-earnest John Earnest Episode 43 https://www.arraycast.com/episodes/episode43-john-earnest-decker[02] 00:03:40 Gordon Hoekstra Award https://twitter.com/Gordon_Hoekstra/status/1654667681709056000/photo/1 J Wiki Browser Video https://code.jsoftware.com/wiki/Wiki/Report_of_Meeting_2023-05-04[03] 00:05:43 APL Show https://apl.show/2023/05/02/Primitives-Extravaganza-Continued.html Array Notation for APL https://aplwiki.com/wiki/Array_notation[04] 00:07:50 1010 Data k developers https://www.1010data.com/company/careers/#Openpositions[05] 00:08:58 Kadane's Algorithm https://en.wikipedia.org/wiki/Maximum_subarray_problem[06] 00:14:13 Troels Henriksen Episode on ArrayCast https://www.arraycast.com/episodes/episode37-futhark Futhark https://en.wikipedia.org/wiki/Futhark_(programming_language) Carnegie Mellon Parlay https://dl.acm.org/doi/pdf/10.1145/3350755.3400254 Guy Steele Fortress https://en.wikipedia.org/wiki/Fortress_(programming_language)[07] 00:19:47 Stevan Apter Episode https://www.arraycast.com/episodes/episode26-stevan-apter No Stinking Loops (Stevan's blog) https://www.nsl.com/[08] 00:21:42 Combinators https://en.wikipedia.org/wiki/Combinatory_logic[09] 00:23:28 Nothing in BQN https://mlochbaum.github.io/BQN/doc/expression.html#nothing[10] 00:24:49 Sliding Subarray Beauty https://leetcode.com/problems/sliding-subarray-beauty/[11] 00:29:50 Big O Notation https://en.wikipedia.org/wiki/Big_O_notation[12] 00:37:35 peach q https://code.kx.com/q/basics/peach/ SV in Dyalog APL https://aplwiki.com/wiki/APL.SV sv in q https://code.kx.com/q/ref/sv/ vs in q https://code.kx.com/q/ref/vs/[13] 00:49:05 aplcart https://aplwiki.com/wiki/APLcart[14] 00:55:33 Dyalog Peach http://docs.dyalog.com/14.0/Dyalog%20APL%20PEACH%20Reference%20Guide.pdf Futures and isolates https://docs.dyalog.com/latest/Parallel%20Language%20Features.pdf[15] 01:07:25 Henry Rich TPL Episode https://www.arraycast.com/episodes/episode50-fold

Apr 29, 2023 • 1h 20min
Fold and Scan
Array Cast - April 28, 2023 Show NotesThanks to Bob Therriault, Marshall Lochbaum, and Adám Brudzewsky for gathering these links:[01] 00:01:35 J903 on iOS https://code.jsoftware.com/wiki/Guides/iOS J9.5 https://code.jsoftware.com/wiki/System/Installation#J9.5_BETA m. Modular arithmetic https://code.jsoftware.com/wiki/Vocabulary/mdot[02] 00:02:53 Suggestions for Stephen's book SJT@5jt.com[03] 00:06:31 Rich's Problem Solving video https://www.youtube.com/watch?v=O73HYH0p8eo[04] 00:07:49 Henry Rich Fold Episode https://www.arraycast.com/episodes/episode48-henry-rich Kadane's Algorithm https://en.wikipedia.org/wiki/Maximum_subarray_problem[05] 00:11:20 J Under (Dual) Conjunction https://code.jsoftware.com/wiki/Vocabulary/ampdot Fold in q https://code.kx.com/q/ref/accumulators/#while Fold in BQN https://mlochbaum.github.io/BQN/doc/fold.html Fold(Reduce) in APL https://aplwiki.com/wiki/Reduce Fold in J https://code.jsoftware.com/wiki/Vocabulary/fcap[06] 00:15:07 Taylor Series https://en.wikipedia.org/wiki/Taylor_series[07] 00:22:10 J Prefixes https://code.jsoftware.com/wiki/Vocabulary/bslash J Suffixes https://code.jsoftware.com/wiki/Vocabulary/bslashdot[08] 00:28:02 q Scan Iterator https://code.kx.com/q/ref/iterators/[09] 00:36:49 Tom McGuire's Kadane Tutorial https://code.jsoftware.com/wiki/Essays/Kadane_Algorithm;_J_Tutorial Will Gajate's J-k Fold equivalents https://code.jsoftware.com/wiki/User:Will_Gajate/FoldVariants[10] 00:46:09 Guy Steele's Fortress https://en.wikipedia.org/wiki/Fortress_(programming_lang

Apr 15, 2023 • 1h 5min
Naming is Hard
Array Cast - April 14, 2023 Show NotesThanks to Bob Therriault and Adám Brudzewsky for gathering these links:[01] 00:01:37 APLSeeds 2023: https://dyalog.tv/APLSeeds23 APL Germany Spring meeting: https://apl-germany.de/apl-germany-fruehjahrstagung-2023/ APL Show Episode "Change the Way You Think - Part 1": https://apl.show/2023/03/09/Reaction-to-Change-the-way-you-write-Change-the-way-you-think-part-1.html APL Show Episode "Change the Way You Think - Part 2": https://apl.show/2023/03/30/Reaction-to-Change-the-way-you-write-Change-the-way-you-think-part-2.html Fold and Other Conjunctions ArrayCast Episode: https://www.arraycast.com/episodes/episode50-fold[02] 00:10:05 Perlis "A programming language is low level when it demands attention to the irrelevant" https://www.brainyquote.com/quotes/alan_perlis_177161[03] 00:11:25 Smalltalk Programming Language: https://en.wikipedia.org/wiki/Smalltalk Lisp Programming Language: https://en.wikipedia.org/wiki/Lisp_(programming_language) Haskell Programming Language: https://en.wikipedia.org/wiki/Haskell[04] 00:21:30 J forums: https://code.jsoftware.com/wiki/System/Forums[05] 00:35:40 J Incunabulum: https://code.jsoftware.com//wiki/Essays/Incunabulum Inuit Number System: https://www.scientificamerican.com/article/a-number-system-invented-by-inuit-schoolchildren-will-make-its-silicon-valley-debut/[06] 00:39:10 Roman Numerals: https://en.wikipedia.org/wiki/Roman_numerals A History of Mathematical Notations: https://www.amazon.com/History-Mathematical-Notations-Dover-Mathematics/dp/0486677664[07] 00:43:10 Danish Vigesimal System: https://en.wikipedia.org/wiki/Numeral_(linguistics)#20:_vigesimal[

Apr 1, 2023 • 1h 37min
Fold and Other Functional Conjunctions
Array Cast - March 31, 2023 Show NotesThanks to Bob Therriault, Conor Hoekstra and Marshall Lochbaum for gathering these links:[01] 00:01:45 Luther J. Woodrum Obituary https://www.fraryfuneralhome.com/obituaries/Luther--J.-Woodrum?obId=27482014#/celebrationWall https://www.linkedin.com/in/luther-woodrum-b5775a4a?trk=public_profile_browsemap Lenore Mullin Mathematics of Arrays https://www.linkedin.com/in/lenore-mullin-268b0a13[02] 00:03:46 Episode 6 https://www.arraycast.com/episodes/episode-06-henry-richs-deep-dive-into-j Episode 18 https://www.arraycast.com/episodes/episode18-henry-rich-presents-j903 Episode 48 https://www.arraycast.com/episodes/episode48-henry-rich[03] 00:04:40 Command to run Fold using J Playground - install 'github:jsoftware/dev_fold' J Fold https://code.jsoftware.com/wiki/Vocabulary/fcap APL Reduce / https://aplwiki.com/wiki/Reduce APL Scan \ https://aplwiki.com/wiki/Scan J Scan /\ https://code.jsoftware.com/wiki/Vocabulary/bslash https://code.jsoftware.com/wiki/Vocabulary/slash J Grade /: or \: https://code.jsoftware.com/wiki/Vocabulary/slashco[04] 00:10:02 Functional Programming Language https://en.wikipedia.org/wiki/Functional_programming C Programming Language https://en.wikipedia.org/wiki/C_(programming_language)[05] 00:12:30 Iverson Notation https://www.jsoftware.com/papers/APL.htm &n

Mar 18, 2023 • 1h 25min
What Affects Array Language Performance?
Array Cast - March 17, 2023 Show NotesThanks to Bob Therriault, Richard Park, Conor Hoekstra and Adám Brudzewsky for gathering these links:[01] 00:01:55 APL problem solving competition https://contest.dyalog.com/ Kattis online competition https://open.kattis.com/ APL Seeds '23 https://www.dyalog.com/apl-seeds-user-meetings/aplseeds23.htm Linux Format Magazine https://linuxformat.com/linux-format-300.html The APL Show - Reaction to "Change the Way You Think" https://apl.show/2023/03/09/Reaction-to-Change-the-way-you-write-Change-the-way-you-think-part-1.html The APL Campfire - Norman Thomson https://www.youtube.com/watch?v=jPujK-GvHGQ&list=PLYKQVqyrAEj91hZHbJiWOENHZP4JT8VFv[02] 00:06:16 Ed Gottsman's Wiki Gui https://www.youtube.com/watch?v=j17E_KUgKxk[03] 00:07:09 Why I Love BQN So Much https://www.youtube.com/watch?v=mRT-yK2RTdg J software https://www.jsoftware.com/#/ Dyalog APL https://www.dyalog.com/[04] 00:08:12 Adám's APL Quest https://www.youtube.com/@abrudz/playlists[05] 00:09:50 q download https://kx.com/kdb-personal-edition-download/[06] 00:13:10 Shakti https://shakti.com/[07] 00:14:10 Emery Berger "Performance Really Matters" https://www.youtube.com/watch?v=7g1Acy5eGbE[08] 00:17:14 Three consecutive odds ADSP 'scanductions' episode https://adspthepodcast.com/2023/03/03/Episode-119.html[09] 00:19:40 Rich Park's "A Programming Language for Thinking About Algorithms" https://www.dyalog.com/uploads/files/presentations/ACCU20210520.pdf[10] 00:21:00 Windows function in BQN https://mlochbaum.github.io/BQN/doc/windows.html[11] 00:27:22 Fold in J https://code.jsoftware.com/wiki/Vocabulary/fcap Scan https://aplwiki.c


