Tcl
| Tcl | |
|---|---|
| Paradigm | Multi-paradigm: event-driven, functional, imperative, object-oriented | 
| Designed by | John Ousterhout | 
| Developer | Tcl Core Team | 
| First appeared | 1988 | 
| Stable release | 9.0.1 
   / 21 December 2024 | 
| Typing discipline | Dynamic typing, everything is a string | 
| Implementation language | C, Tcl | 
| License | BSD-style | 
| Filename extensions | .tcl, .tbc | 
| Website | www www | 
| Major implementations | |
| ActiveTcl Androwish | |
| Dialects | |
| Jim, Eagle | |
| Influenced by | |
| AWK, Lisp | |
| Influenced | |
| PHP, PowerShell, Tea, TH1 | |
Tcl (pronounced "tickle" or "TCL"; originally Tool Command Language) is a high-level, general-purpose, interpreted, dynamic programming language. It was designed with the goal of being very simple but powerful. Tcl casts everything into the mold of a command, even programming constructs like variable assignment and procedure definition. Tcl supports multiple programming paradigms, including object-oriented, imperative, functional, and procedural styles.
It is commonly used embedded into C applications, for rapid prototyping, scripted applications, GUIs, and testing. Tcl interpreters are available for many operating systems, allowing Tcl code to run on a wide variety of systems. Because Tcl is a very compact language, it is used on embedded systems platforms, both in its full form and in several other small-footprint versions.
The popular combination of Tcl with the Tk extension is referred to as Tcl/Tk (pronounced "tickle teak" or "tickle TK") and enables building a graphical user interface (GUI) natively in Tcl. Tcl/Tk is included in the standard Python installation in the form of Tkinter.