Array languages vs. the curse of the spreadsheet

Array-oriented languages like APL and Kap are being proposed as more principled alternatives to spreadsheets for complex data manipulation, but their dense symbolic notation and right-to-left evaluation raise major usability and learnability concerns. Commenters contrast Excel’s messy but accessible “grid plus formulas” model—now augmented with lambdas, Python, and array formulas—with array languages’ compact, math-like expressions that can be powerful yet opaque to non-experts. Many conclude that while spreadsheets have serious correctness and maintainability problems, any replacement must meet typical users where they are in terms of ergonomics, familiarity, and real-world workflows.

Excel as a programming environment

  • Several comments stress that Excel is already a “proper” programming language: it now has LAMBDA, reusable lambdas (in recent 365 versions), custom functions, VBA, and even embedded Python.
  • Array formulas and “spilled” dynamic arrays are highlighted as major improvements for operating on ranges without copy‑pasting formulas. PowerQuery is cited as another powerful built‑in tool.
  • Some argue that for real‑world users, formulas are just a means to get the data they care about; the data, not the code, is primary.

Spreadsheet compilation and analysis

  • People are interested in converting spreadsheets to conventional languages (Python, C#, Java) to surface cell dependencies and add structure.
  • Python libraries exist that interpret Excel formulas as a DAG and let you manipulate “cells” programmatically. Implementing this is described as complex due to lack of a formal formula spec and many edge cases.
  • Research and tools (e.g., linting, semantic smell detection) already exist to detect inconsistent formulas and likely errors.

Spreadsheet UX and reliability

  • Desire for clear visual distinction between formula cells and input cells recurs; existing workarounds include “Show Formulas,” Trace Dependents, conditional formatting with ISFORMULA, and manual color conventions.
  • Some think default highlighting would distract from reading data; others argue it would reduce cognitive load and bugs.
  • Spreadsheets are described as extremely powerful but also fragile: easy to mutate accidentally, hard to audit at scale, and widely used in critical contexts despite many hidden errors.

Array languages vs. spreadsheets

  • The article’s claim that array languages better match how spreadsheet users think is contested; many say typical users think in rows/columns, not abstract matrices.
  • Proponents of APL‑style array languages emphasize density, composability, elimination of loops, and “tool‑for‑thought” benefits once idioms are learned.
  • Critics focus on discoverability, steep learning curve, unfamiliar glyphs, and poor fit with mainstream Excel users; they compare favorably to more verbose but familiar languages (Scheme, Lisp, Python).

Symbolic notation, readability, and ergonomics

  • Long debate over APL‑like Unicode glyphs: advocates liken them to mathematical notation and argue they improve pattern recognition; skeptics see them as code‑golfy, hard to type, unsearchable, and unapproachable.
  • Suggestions include dual representations (symbols ↔ spelled‑out names), or array languages using ASCII/English words (e.g., Uiua) to ease adoption.

Kap specifically

  • Kap is presented as an APL‑inspired array language with a spreadsheet‑like UI, targeting JVM/JS/native.
  • The author (in‑thread) says the goal is not to replace Excel for average users but to give “spreadsheet‑class” users a more principled environment and integrate tightly with Excel (copy/paste, live links).
  • Some commenters find the showcased example (longest word with ≤2 vowels) too artificial and ask for more realistic business‑oriented demonstrations.