Turing tarpit

related topics
{theory, work, human}
{math, number, function}
{language, word, form}
{system, computer, user}

Turing tarpit is a general term for a programming language or computer interface which allows for a great deal of flexibility in function but is difficult to learn and use because it offers little or no support for common tasks. The phrase was coined by Alan Perlis in the epigram

In any Turing complete language, it is possible to write any computer program (save differences in input/output formatting), so in a very rigorous sense nearly all programming languages are equally capable. Turing tarpits prove that theoretical ability is not the same as usefulness in practice. A clear way of measuring this difference is by comparing the average lengths of common programs implemented in different systems. However, a very short version of a program may also be very hard to read.

Turing tarpits are characterized by having a simple abstract machine which requires the user to deal with many details in the solution of a problem. At the extreme opposite are interfaces which can perform very complex tasks with little human intervention but become obsolete if requirements change slightly.

See also


Full article ▸

related documents
DARPA Agent Markup Language
Voodoo programming
Tracy D. Terrell
Art of murder
Acmeist poetry
Georgian poets
America's Great Depression
Karl Menger
Logic puzzle
Gee Vaucher
Janusz Zajdel
Joseph Jacotot
Les Automatistes
John F. Sowa
Doomsday Clock
Hack value
Wikipedia:WikiProject Music terminology
Steve Cokely
Caspar Wessel
Statistical regularity
John Moore (anarchist)
Revolt in 2100
Wikipedia:Free On-line Dictionary of Computing/X - Z
Genus-differentia definition
La Jeunesse
Choricius of Gaza