If You’re Not Writing a Program, Don’t Use a Programming Language

Leslie Lamport, Distributed Computing & Education Column by Juraj Hromkovic, Stefan Schmid

Abstract

The need to handle large programs and to produce ecient compiled codeadds complexity to programming languages and limits their expressiveness.

Algorithms are not programs, and they can be expressed in a simpler and more expressive language. That language is the one used by almost every branch of science and engineering to precisely describe and reason about the objects they study: the language of mathematics. Math is useful for describing a more general class of algorithms than are studied in algorithm

courses.