One testimony to the power of this incrementalism is the number of programmers who use Tk by accident. We hear many anecdotes of developers who choose Tk as a quick prototyping tool, then discover they're able to complete a full-blown application by refinement of the prototype. The core Tk distribution lacks widgets for tree display, SpinBox, ComboBox, graphing, and several others that are now commonplace. However, the Tk text and canvas are so powerful, and Tk so extensible, that developers have lived without new features by relying on free extensions. Text embeds both a compact visual editor and an HTMLv2 display engine, and defines sophisticated tag programming, making visual effects easy.
Browsers depend on cursor movement and selection by clicking.
Tk's text and related widgets such as button and label suffice for most form-based GUI programming. Applications in geographic information systems, electronic design automation, and complex visualization require a second level of graphics to display and manage arbitrary drawings such as maps, engineering diagrams, and images. Many successful programmers work only on form-based office automation tasks. However, Tk's canvas can help those with more general needs. Tk is the established basis for successful commercial GUI applications, many of which have stringent requirements for scale and performance.