Turing tarpit

Last updated

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]

Contents

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 readers to speculate on his meaning. As a pioneer in programming language technology, he had participated in the specification of ALGOL, a language that provided a rich algorithmic syntax but no standard input/output facilities. Accordingly, Peter Wegner identified real-time interaction with an environment as an aspect of practical computing that traditional mathematical 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

  1. "Turing Tarpit". wiki.c2.com. 21 November 2014. Retrieved 30 April 2023.
  2. Perlis, A (September 1982). "Epigrams on Programming". ACM SIGPLAN Notices. 17 (9). Yale University: 7–13. doi: 10.1145/947955.1083808 . S2CID   20512767.
  3. Wegner, Peter (May 1997). "Why Interaction Is More Powerful Than Algorithms". Communications of the ACM. 40 (5): 80–91.
  4. Chandra, V (2014). Geek Sublime: The Beauty of Code, the Code of Beauty . Graywolf Press. ISBN   9781555973261 . Retrieved 28 August 2015. turing tarpit.
  5. Esoteric Topics in Computer Programming, Cat's Eye Technologies, Canada. ("They present the programmer with the challenge, intrigue, and entertainment of looking at known algorithms and concepts in a whole new light.")

Further reading