a turing tarpit (or 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 epigrams on programming  == overview == in any turing complete language, it is possible to write any computer program, so in a very rigorous sense nearly all programming languages are equally capable. turing tarpits show that theoretical ability is not the same as usefulness in practice. 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. 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.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.") == examples == === tsc === tsc, which stands for text script, is a language used inside the cave story game engine for controlling non-player characters, events, and animated cutscenes. #0702 <key<msg<flj5001:0703hey, i have not seen you before.<fl+5001<nod<end #0703 you already talked to me.<nod<end tsc is a turing tarpit because it contains about 8000 boolean variables total, all of which are global variables, and does not have basic data types such as integers, floats, strings, bytes, and so forth. it is notoriously difficult to use for large programs. there is only 1 control flow command, which implements an if-goto statement that can only check if a certain boolean value is true. all numbers are base ten numbers, and they can be a maximum of 4 digits long. numbers ca
1982_introductions Alan_Turing Esoteric_programming_languages Theory_of_computation