← the matrixergonomics

Capability — ergonomics

Expression-oriented syntax

Code that reads like the maths it does.

FORTRAN was an expression language before the term existed: a formula was a formula. ALGOL added infix operators with precedence, Lisp made everything a uniform prefix, APL made whole arrays into expressions. The choice is a grammar of habits: precedence rules, operator overloading, the comfortable arithmetic of spreadsheets and the awkward arithmetic of C’s cast-and-shift.

Expression syntax is what makes a language feel fast to write. It is also where the sharp edges live: the dangling else, the difference between an expression and a statement, and languages that let any expression be a statement until something surprising happens.

The trade-off

  • Rich expression syntax invites clever one-liners that are hard to debug and harder to review.
  • Everything-is-an-expression languages can feel function-shaped when the problem is really about steps.

Where it came from

FORTRAN, 1957, for formulas; Lisp, 1958, for uniformity; ALGOL 60, 1960, for infix precedence.