Paradigm | multi-paradigm: object-oriented, functional, procedural, event-driven programming, imperative |
---|---|
Designed by | John Ousterhout |
Developer | Tcl Core Team |
First appeared | 1988 |
Stable release |
8.6.6 / July 27, 2016
|
Typing discipline | dynamic typing, everything can be treated as a string |
License | BSD-style |
Filename extensions | .tcl, .tbc |
Website | www |
Major implementations | |
ActiveTcl | |
Influenced by | |
AWK, Lisp | |
Influenced | |
PHP,Tea, PowerShell |
Tcl (pronounced "tickle" or tee cee ell, /ˈtiː siː ɛl/) 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 and functional programming or 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, 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.