请输入您要查询的百科知识:

 

词条 Turing tarpit
释义

  1. See also

  2. References

  3. Further reading

{{Use dmy dates|date=April 2018}}

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]

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

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. Showing that theoretical ability is not the same as usefulness in practice, Turing tarpits are characterized by having a simple abstract machine that requires the user to deal with many details in the solution of a problem.[3] At the extreme opposite are interfaces that can perform very complex tasks with little human intervention but become obsolete if requirements change slightly.

Some esoteric programming languages, such as Brainfuck, are specifically referred to as "Turing tarpits"[4] because they deliberately implement the minimum functionality necessary to be classified as Turing complete languages. 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

{{Portal|Computer programming}}
  • Greenspun's tenth rule
  • Zawinski's law of software envelopment

References

1. ^{{cite web| url=http://c2.com/cgi/wiki?TuringTarpit | title=Turing Tarpit | website=c2.com | date=10 March 2010 | accessdate=7 November 2012 }}
2. ^{{cite journal|last1=Perlis|first1=A|journal=ACM SIGPLAN Notices|volume=17|issue=9|pages=7–13|title=Epigrams on Programming|date=September 1982|isbn=|url=http://dl.acm.org/citation.cfm?id=1083808|archiveurl=http://pu.inf.uni-tuebingen.de/users/klaeren/epigrams.html|archivedate=1996-03-26|publisher=Yale University|doi=10.1145/947955.1083808|accessdate=28 August 2015}}
3. ^{{cite web | url=https://practicingruby.com/articles/shared/bwgflabwncjv | title=Exploring the depths of a Turing tarpit | website=practicingruby.com | date=7 February 2013 | deadurl=yes | archiveurl=https://web.archive.org/web/20120204180904/http://practicingruby.com/articles/shared/bwgflabwncjv | archivedate=4 February 2012 | df=dmy-all }}
4. ^{{cite book|last1=Chandra|first1=V|title=Geek Sublime: The Beauty of Code, the Code of Beauty|date=2014|publisher=Graywolf Press|isbn=9781555973261|url=https://books.google.com/books?id=-4eBAwAAQBAJ&q=turing%20tarpit|accessdate=28 August 2015}}
5. ^[https://web.archive.org/web/20020609152409/http://www.catseye.mb.ca/esoteric/index.html 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

  • G. Fischer, A.C. Lemke, "Constrained Design Processes: Steps Toward Convivial Computing", Technical Report CU-CS-369-87, Colorado University, USA.
  • E.L. Hutchins, J.D. Hollan, D.A. Norman, [https://web.archive.org/web/20100613062436/http://cleo.ics.uci.edu/teaching/Winter10/231/readings/1-HutchinsHollanNorman-DirectManipulation-HCI.pdf "Direct Manipulation Interfaces"]. In User Centered System Design. New Perspectives on Human–Computer Interaction (1986).

5 : Computer-related introductions in 1982|Alan Turing|Recreational mathematics|Theory of computation|Software engineering folklore

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/12 9:42:05