Turing tarpit
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

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. The phrase was coined in 1982 by Alan Perlis in the Epigrams on Programming:
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.
The term has since become associated with esoteric programming languages that are intentionally designed to be universal but impractical. 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.
See also
Greenspun's tenth rule
Zawinski's law of software envelopment
References
Further reading
G. Fischer, A.C. Lemke, "Constrained Design Processes: Steps Toward Convivial Computing", Technical Report CU-CS-369-87, University of Colorado, USA.
E.L. Hutchins, J.D. Hollan, D.A. Norman, Hutchins, Edwin L.; Hollan, James D.; Norman, Donald A. (1 December 1985).
The public source identifies “Turing tarpit” as 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. This brief keeps that definition visible, then builds a research path around Turing, tarpit and programming.
Why this record matters
A short description can identify a subject without explaining its stakes. For “Turing tarpit”, the useful work is to connect “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” to the records capable of establishing context and consequence.
Named sources, stable identifiers and responsible institutions provide the strongest route from overview to verifiable evidence. The source revision retrieved here is dated May 24, 2026. The linked authority identifier is Q4467269. None of the 0 selected statements returned an explicit reference. The first chronological checks are 1982 and 1985.
A concise general-reference account can conceal disagreements about scope, terminology or the weight assigned to individual sources. The source lead contains qualifying language; that uncertainty should survive quotation, summary and reuse. Authority statements aid reconciliation but still require their own references, qualifiers and ranks to be checked.
How to read it
Use the entry as an orientation point, then follow its citations and revision history. Names, dates and institutional relationships should be checked against the original record.
- Subject orientation
- Search vocabulary
- Locating named sources
The closest primary source, responsible institution and strongest cited specialist reference.
Three-step research path
- Establish the record: confirm the title “Turing tarpit”, its source revision and the description used here.
- Expand the search: follow Turing tarpit primary sources, Turing tarpit archive and Turing research across catalogues and specialist indexes.
- Test the account: compare the strongest cited source with the responsible institution’s current record and note any disagreement.
Questions for further research
- Which source most directly establishes the central claim about “Turing tarpit”?
- Which institution is responsible for the underlying evidence?
- What terminology or title could unlock a more precise catalogue search?
Search terms from this dossier
This entry incorporates text from “Turing tarpit” on English Wikipedia. Contributors are listed in the page history. Text is available under the Creative Commons Attribution-ShareAlike 4.0 License. Selected authority identifiers and statements are retrieved from Wikidata under CC0; their references and qualifiers remain part of the verification path.