

The Array Cast
The Array Cast
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

Nov 11, 2023 • 1h 32min
Tali Beynon and the Power of Axis Naming
Array Cast - November 10, 2023 Show NotesThis link will take you to the Show notes on the ArrayCast website: https://www.arraycast.com/episode66-show-notes

Oct 28, 2023 • 1h 9min
Introduction to Games in the Array Languages
Array Cast - October 27, 2023 Show NotesThis link will take you to the Show notes on the ArrayCast website: https://www.arraycast.com/episode65-show-notes

Oct 14, 2023 • 1h 47min
Tacit #5
Physicists learning through experimentation, announcement about ArrayGrounds and Beacon, exploring higher order combinators, invisible modifier train in J programming, importance of tacit knowledge in learning, operators and modifiers in J programming, understanding verb trains and modifier trains, function operators and syntax confusion, forks and trains in combinatorial logic, building verbs and structures, value of different languages with their own APIs, exploring Cue language and its unique features, invisible modifiers and hyper operators.

Sep 29, 2023 • 1h 13min
Uiua, a Stack based Array language
Promotions expert and speaker, Aaron Hsu, discusses the Uiua stack-based array language. They explore other programming languages like BQN and K, as well as the history of the array model. The podcast covers topics such as jagged arrays, non-rectangular data, and the implementation of the language in Rust. They also touch on the challenges of running BQN and Rust with a CBQN binding.

Sep 16, 2023 • 1h 17min
What is Singeli?
Array Cast - September 15, 2023 Show Notes[01] 00:01:50 J Primer https://code.jsoftware.com/wiki/Help/Primer/Title APLCart https://aplwiki.com/wiki/APLcart Request for link for J Wiki Browser edward DOT j DOT gottsman AT gmail DOT com Video demo of the J wiki browser https://www.youtube.com/watch?v=emVBSN6EZFI Putting JHS on AWS https://code.jsoftware.com/wiki/System/Installation/Cloud J on iOS https://code.jsoftware.com/wiki/Guides/iOS[02] 00:07:05 Looking for APLwiki administrators https://aplwiki.com/wiki/Ad%C3%A1m_Brudzewskyhttps://aplwiki.com/wiki/Adám_Brudzewsky#External_links Contact AT ArrayCast DOT Com[03] 00:10:01 Singeli Music Genre https://en.wikipedia.org/wiki/Singeli Singeli Programming Language https://github.com/mlochbaum/Singeli/tree/master#readme Singeli Interactive Playground https://github.com/dzaima/singeliPlayground[04] 00:12:35 Venn Diagram of Array languages https://twitter.com/code_report/status/1570069385548537857 "What Makes a Language an Array Programming Language" on the ArrayCast https://www.arraycast.com/episodes/episode36-what-makes-an-array-language Tuples in Singeli https://github.com/mlochbaum/Singeli/tree/master#tuples[05] 00:14:22 Arrays in C https://en.wikipedia.org/wiki/C_programming#Arrays Generator in Singeli https://github.com/mlochbaum/Singeli/tree/master#generators k Programming Languages https://aplwiki.com/wiki/K Singeli Tutorials Interpreter https://github.com/mlochbaum/Singeli/blob/master/doc/interpreter.md Compiler https://github.com/mlochbaum/Singeli/blob/master/doc/compiler.md Purity and Ford write a min filter https://github.com/mlochbaum/Singeli/blob/master/doc/minfilter.md[06] 00:16:50 Closures in programming languages https://en.wikipedia.org/wiki/Closure_(computer_programming) Python Programming Language https://en.wikipedia.org/wiki/Python_(programming_language)[07] 00:21:15 Types in Singeli https://github.com/mlochbaum/Singeli/tree/master#types C Programming Language https://en.wikipedia.org/wiki/C_programming[08] 00:24:03 Program Compilation https://en.wikipedia.org/wiki/Compiler Program Interpretation https://en.wikipedia.org/wiki/Interpreter_(computing)[09] 00:25:54 C++ Programming Language https://en.wikipedia.org/wiki/C%2B%2B Intermediate Representation IR https://en.wikipedia.org/wiki/Intermediate_representation[10] 00:29:51 C++ Monomorphization https://en.wikipedia.org/wiki/Monomorphization#[11] 00:39:38 Aaron Hsu Codfns Compiler https://aplwiki.com/wiki/Co-dfns Aaron Hsu on the ArrayCast https://www.arraycast.com/episodes/episode19-aaron-hsu TryAPL https://aplwiki.com/wiki/TryAPL[12] 00:44:25 Single Assignment C https://www.sac-home.org/index Bob Bernecky on the ArrayCast https://www.arraycast.com/episodes/episode55-bob-bernecky[13] 00:48:23 CBQN https://github.com/dzaima/CBQN/tree/master#readme Rust Programming Language https://en.wikipedia.org/wiki/Rust_(programming_language) BQN Programming Language https://github.com/mlochbaum/BQN/blob/master/README.md[14] 00:52:30 Template Level Meta-Programming https://en.wikipedia.org/wiki/Template_metaprogramming[15] 00:57:14 X86 Assembler Language https://en.wikipedia.org/wiki/X86_instruction_listings[16] 00:58:16 GPU https://en.wikipedia.org/wiki/GPU Shader Programming Languages https://en.wikipedia.org/wiki/Shader Zig Programming Language https://en.wikipedia.org/wiki/Zig_(programming_language) Haskell Programming Language https://en.wikipedia.org/wiki/Haskell_programming[17] 01:01:03 Bartosz Milewski C++ Metą Programming videos https://www.youtube.com/watch?v=80ifzK3b8QQ&list=PL1835A90FC78FF8BE[18] 01:01:56 D Programming Language https://en.wikipedia.org/wiki/D_programming[19] 01:03:25 Kinds in Singeli https://github.com/mlochbaum/Singeli/tree/master#kinds-of-value[20] 01:06:37 Singeli Tutorials Interpreter https://github.com/mlochbaum/Singeli/blob/master/doc/interpreter.md Compiler https://github.com/mlochbaum/Singeli/blob/master/doc/compiler.md Purity and Ford write a min filter https://github.com/mlochbaum/Singeli/blob/master/doc/minfilter.md[21] 01:07:30 "What is the Problem" ArrayCast Episode https://www.arraycast.com/episodes/episode53-what-is-the-problem[22] 01:11:40 Linguist https://github.com/github-linguist/linguist/blob/master/CONTRIBUTING.md#adding-an-extension-to-a-languagehttps://github.com/search?type=code&q=path%3A*.bqn+NOT+is%3Afork CodeReport Videos https://www.youtube.com/c/codereport[23] 01:17:48 Contact AT ArrayCast DOT Com APL Farm Discord/Matrix https://aplwiki.com/wiki/APL_Farm

Sep 2, 2023 • 1h 20min
Lynn Sutherland and the Story of Nial
Array Cast - September 1, 2023 Show NotesThanks to Bob Therriault, Lynn Sutherland and Adám Brudzewsky for gathering these links:[01] 00:01:34 2023 APL Problem Solving Results https://www.dyalog.com/news/156/420/2023-APL-Problem-Solving-Competition-Winners.htm Dyalog System Admin/Enterprise Architect opening https://www.dyalog.com/careers.htm#sysadmin[02] 00:02:18 BQN Licensing change to MPL https://github.com/dzaima/CBQN/tree/master#licensing[03] 00:03:11 Contact Stephen about q tutorials sjt AT 5jt DOT com[04] 00:04:51 Nial Programming Language https://aplwiki.com/wiki/Nial APL Farm discord https://aplwiki.com/wiki/APL_Farm Alberta Research Council/Alberta Innovates https://albertainnovates.ca/ National Resource Council https://nrc.canada.ca/en/corporate/about-nrc MaRS Institute https://www.marsdd.com/[05] 00:11:12 Queens University https://www.queensu.ca/ Mike Jenkins https://www.cs.queensu.ca/people/Mike/Jenkins https://www.linkedin.com/in/michael-jenkins-1ba84915/ Trenchard More https://en.wikipedia.org/wiki/Trenchard_More[06] 00:14:10 Procedural Programming Language https://en.wikipedia.org/wiki/Procedural_programming VAX https://en.wikipedia.org/wiki/VAX IBM PC XT https://en.wikipedia.org/wiki/IBM_PC_XT[07] 00:17:20 Nested Array Theory https://aplwiki.com/wiki/Array_model#Nested_array_theory[08] 00:18:43 Jim Brown https://aplwiki.com/wiki/Jim_Brown[09] 00:25:14 Computer Language Magazine https://archive.org/details/computerlanguage Carl McCrosky https://www.linkedin.com/in/carl-mccrosky-b936051/ Intel AVX512 https://en.wikipedia.org/wiki/AVX-512[10] 00:27:21 OpenAI https://en.wikipedia.org/wiki/OpenAI Triton OpenAI https://openai.com/research/triton[11] 00:29:31 APL 84 Helsinki https://aplwiki.com/wiki/APL_conference#1984[12] 00:31:15 Dyalog https://aplwiki.com/wiki/Dyalog_APL KX https://kx.com/ Julia Programming Language https://julialang.org/ Clojure Programming Language https://clojure.org/ Unix Operating System https://en.wikipedia.org/wiki/Unix Red Hat https://en.wikipedia.org/wiki/Red_Hat Sun Microsystems https://en.wikipedia.org/wiki/Sun_microsystems[13] 00:34:15 Matlab https://en.wikipedia.org/wiki/Matlab[14] 00:38:09 Java Programming Language https://en.wikipedia.org/wiki/Java_programming BQN Programming Language Modifiers https://mlochbaum.github.io/BQN/doc/ops.html#modifiers J Programming Language Gerunds https://code.jsoftware.com/wiki/Vocabulary/GerundsAndAtomicRepresentation[15] 00:40:39 Nial tutorial https://www.nial-array-language.org/ndocs/intro/[16] 00:42:25 Strand Notation https://aplwiki.com/wiki/Strand_notation Combinators https://en.wikipedia.org/wiki/Combinatory_logic Nial Atlas https://www.nial-array-language.org/ndocs/NialDict2.html#atlas Point free programming https://en.wikipedia.org/wiki/Tacit_programming[17] 00:44:43 eachboth https://www.nial-array-language.org/ndocs/dict/#eachboth[18] 00:46:56 q Programming Language https://code.kx.com/q/learn/startingkdb/language/ peach https://code.kx.com/q/basics/peach/ J threads https://code.jsoftware.com/wiki/Vocabulary/tcapdot#dyadic[19] 00:51:25 Nial website https://www.nial-array-language.org/[20] 00:52:37 Order of Operations https://en.wikipedia.org/wiki/Order_of_operations[21] 00:55:00 Javascript Programming Language https://en.wikipedia.org/wiki/Javascript Unary Functions https://en.wikipedia.org/wiki/Unary_functions Smalltalk Programming Language https://en.wikipedia.org/wiki/Smalltalk[22] 01:02:50 TIO Nial Examples https://tio.run/##y8tMzPn/P7EstSgxPVUhs1hBP7q4NFdHoSQxJ6cy1pqrvCizJFUBJm@oYKRgrGDy/z8A https://tio.run/##y8tMzPn/v7wosyRVQVtBS0HD0EDByEATSCsYaf7/DwA https://tio.run/##y8tMzPn/v7wosyRVQVvB0EDByEBBS8FQwej/fwA https://tio.run/##y8tMzPn/v7wosyRVQUNbwdBAwchAQUvBUMFI8/9/AA https://tio.run/##y8tMzPn/v7wosyRVQVtBw9BAwchAU0ELyFIw0vz/HwA https://tio.run/##y8tMzPn/v7wosyRVQcPQQEFDK1pXRztWU8FI8/9/AAOnline Nial Interpreter https://niallang.github.io/NIAL_WASM/[23] 01:17:48 Contact AT ArrayCast DOT Com

4 snips
Aug 19, 2023 • 1h 13min
Rob Pike - Array Languages are Important
Rob Pike, creator of the Go programming language, discusses the influence of APL on Go and the power of APL in numerical calculations. They explore the elegance and problem-solving approaches in array languages, as well as the challenges of implementing multi-dimensional arrays in Go. The chapter also delves into the factors that separate individuals who are intrigued by APL from those who are not.

Aug 5, 2023 • 1h 5min
Raul Miller - Precision
Array Cast - August 4, 2023 Show NotesThanks to Bob Therriault and AdámBrudzewsky for gathering these links:[01] 00:01:49 Stephen's book contributions sjt AT 5jt DOT com Dyalog User Meeting https://www.dyalog.com/user-meetings/dyalog23.htm[02] 00:04:19 Henry ArrayCast episodes ArrayCast Episode #6 https://www.arraycast.com/episodes/episode-06-henry-richs-deep-dive-into-j ArrayCast Episode #18 https://www.arraycast.com/episodes/episode18-henry-rich-presents-j903 ArrayCast Episode #48 https://www.arraycast.com/episodes/episode48-henry-rich ArrayCast Episode #50 https://www.arraycast.com/episodes/episode50-fold APL Farm Discord https://aplwiki.com/wiki/APL_Farm[03] 00:10:40 Todd Rundgren https://en.wikipedia.org/wiki/Todd_Rundgren[04] 00:13:00 J's Extended Integer type https://code.jsoftware.com/wiki/Vocabulary/Constants#Extended_Integers lib.gmp https://gmplib.org/ Infinity in J https://code.jsoftware.com/wiki/Vocabulary/Constants#Infinity Endianness https://en.wikipedia.org/wiki/Endianness[05] 00:20:25 NaN or Indeterminate in J https://code.jsoftware.com/wiki/Essays/Indeterminate Null in K https://k.miraheze.org/wiki/Null%3F[06] 00:25:46 Fixed point type https://en.wikipedia.org/wiki/Fixed-point_arithmetic[07] 00:29:30 Floating Point Math https://0.30000000000000004.com NARS2000 https://aplwiki.com/wiki/NARS2000 J constants https://code.jsoftware.com/wiki/Guides/Constants[08] 00:35:20 Hilbert Matrix https://en.wikipedia.org/wiki/Hilbert_matrix[09] 00:37:00 Kamila Lisp https://aplwiki.com/wiki/KamilaLisp Euler's Formula https://en.wikipedia.org/wiki/Euler%27s_formula Dyalog Idioms https://help.dyalog.com/latest/#Language/Introduction/Idiom%20Recognition/Idiom%20List.htm Roger's Comments https://www.dyalog.com/blog/2015/12/apl-puns/[10] 00:39:00 World Math Day https://www.jsoftware.com/papers/APLQA.htm#worldmathsday Complex Floor https://aplwiki.com/wiki/Complex_floor[11] 00:44:50 Dyalog Time Functions https://help.dyalog.com/latest/#Language/System%20Functions/dt.htm French Republican Calendar https://en.wikipedia.org/wiki/French_Republican_calendar Proleptic Gregorian calendar https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar Leap year rules https://en.wikipedia.org/wiki/Leap_year Microsoft Date Time Picker https://learn.microsoft.com/en-us/dotnet/api/system.datetime.ticks?view=net-7.0[12] 00:48:20 Ben Deane Calendrical C++ https://www.youtube.com/watch?v=qD8HQl1fU5Y[13] 00:53:24 Rosetta Code https://rosettacode.org/wiki/Rosetta_Code J Wiki https://code.jsoftware.com/wiki/Main_Page[14] 00:59:13 Ktye https://aplwiki.com/wiki/APL%5Civ April https://aplwiki.com/wiki/April ArrayCast Episode #23 https://www.arraycast.com/episodes/episode23-andrew-sengul[15] 01:00:47 Scrabble word list Collins https://en.wikipedia.org/wiki/Collins_Scrabble_Words NWL https://en.wikipedia.org/wiki/NASPA_Word_List Official Scrabble Players Dictionary https://en.wikipedia.org/wiki/Official_Scrabble_Players_Dictionary[16] 01:03:50 Contact AT ArrayCast DOT com

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 https://en.wikipedia.org/wiki/Tensor_Processing_Unit4[06] 00:20:56 Machine Learning https://en.wikipedia.org/wiki/Machine_learning[07] 00:29:30 AutoGrad Library https://autograd.readthedocs.io/en/latest/ JAX https://github.com/google/jax Vectorization https://en.wikipedia.org/wiki/Vectorization[08] 00:33:10 Dex White Paper 4 pages https://openreview.net/pdf?id=rJxd7vsWPS Dex White Paper 20 pages https://arxiv.org/pdf/2104.05372.pdf Dex Tutorial https://google-research.github.io/dex-lang/examples/tutorial.html MatLab Programming Language https://www.mathworks.com/products/matlab.html[09] 00:35:40 Rank Polymorphism https://en.wikipedia.org/wiki/Parametric_polymorphism#Higher-rank_polymorphism[10] 00:37:42 Futhark Programming Language https://futhark-lang.org/ Dex and Futhark https://futhark-lang.org/blog/2020-12-28-futhark-and-dex.html ArrayCast Episode with Troels Henriksen https://www.arraycast.com/episodes/episode37-futhark[11] 00:39:00 Haskell Programming Language https://www.haskell.org/[12] 00:40:30 Ad Hoc Polymorphism https://en.wikipedia.org/wiki/Ad_hoc_polymorphism Parametric Polymorphism https://en.wikipedia.org/wiki/Parametric_polymorphism NumPy Python Library https://numpy.org/[13] 00:46:15 CUDA GPU Language https://en.wikipedia.org/wiki/CUDA[14] 00:53:13 XLA JAX compiler https://hpc.nih.gov/apps/JAX.html[15] 00:56:57 Triton OpenAI https://openai.com/research/triton[17] 01:01:44 Languish language tracker https://tjpalmer.github.io/languish/ LLMs https://en.wikipedia.org/wiki/Large_language_model[18] 01:05:43 github/google/Jax github/google-research/dex-lang[19] 01:08:00 Nix https://docs.haskellstack.org/en/stable/nix_integration/[20] 01:09:25 Adam's secret project - TBA[21] 01:10:28 Contact AT ArrayCast DOT com

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.