Turing tarpit

Intentionally obscure programming language From Wikipedia, the free encyclopedia

A Turing tarpit (or Turing tar-pit) is any programming language or computer interface that allows for flexibility in function but is difficult to learn and use because it offers little or no support for common tasks.[1] The phrase was coined in 1982 by Alan Perlis in the Epigrams on Programming:[2]

54. Beware of the Turing tar-pit in which everything is possible but nothing of interest is easy.

Perlis did not further explain the term or offer examples, leaving his meaning open to interpretation. "Turing" has generally been understood to refer to the Church–Turing thesis, which holds that certain simple models of computation are sufficient to express any numerical calculation procedure, even though doing so in practice might be a daunting task.

As a pioneer in programming language technology, Perlis participated in the specification of ALGOL, a language that provided a rich procedural syntax but no standard input/output facilities. Accordingly, Peter Wegner identified real-time interaction with an environment as an aspect of practical computing that models like the Turing machine failed to address.[3]

The term has since become associated with esoteric programming languages that are intentionally designed to be universal but impractical.[4] Using such languages is a form of mathematical recreation: programmers can work out how to achieve basic programming constructs in an extremely difficult but mathematically Turing-equivalent language.[5]

See also

References

Further reading

Related Articles

Wikiwand AI