Tcl

Tcl
Tcl logo
ParadigmMulti-paradigm: event-driven, functional, imperative, object-oriented
Designed byJohn Ousterhout
DeveloperTcl Core Team[1]
First appeared1988; 36 years ago (1988)
Stable release
9.0.0[2] Edit this on Wikidata / 26 September 2024; 45 days ago (26 September 2024)
Typing disciplineDynamic typing, everything is a string
LicenseBSD-style[3]
Filename extensions.tcl, .tbc[4]
Websitewww.tcl-lang.org
www.tcl.tk
Major implementations
ActiveTcl Androwish
Dialects
Jim, Eagle
Influenced by
AWK, Lisp
Influenced
PHP,[5] PowerShell,[6] Tea, TH1[7]

Tcl (pronounced "tickle" or as an initialism[8]) is a high-level, general-purpose, interpreted, dynamic programming language. It was designed with the goal of being very simple but powerful.[9] Tcl casts everything into the mold of a command, even programming constructs like variable assignment and procedure definition.[10] Tcl supports multiple programming paradigms, including object-oriented, imperative, functional, and procedural styles.

It is commonly used embedded into C applications,[11] for rapid prototyping, scripted applications, GUIs, and testing.[12] 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.[13]

The popular combination of Tcl with the Tk extension is referred to as Tcl/Tk (pronounced "tickle teak" or as an initialism) 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.

  1. ^ Cite error: The named reference tclcoreteam was invoked but never defined (see the help page).
  2. ^ "[TCLCORE] Tcl 9.0.0 RELEASED". 26 September 2024. Retrieved 26 September 2024.
  3. ^ "Tcl/Tk License Terms". Tcl Developer Xchange. Retrieved 2016-11-02.
  4. ^ "Tcl Dev Kit – Compiler". ActiveState Docs. Retrieved 2016-11-02.
  5. ^ Lerdorf, Rasmus (2007-04-26). "PHP on Hormones – history of PHP presentation by Rasmus Lerdorf given at the MySQL Conference in Santa Clara, California". The Conversations Network. Retrieved 2009-12-11.
  6. ^ "PowerShell and WPF: WTF". Windows PowerShell Blog. Microsoft. Archived from the original on December 25, 2008. Retrieved April 3, 2019.
  7. ^ "TH1 Scripts". Fossil.
  8. ^ Kenny, Kevin (4 July 2005). "Re: TCL certification". Newsgroupcomp.lang.tcl.
  9. ^ "Language". Tcl Developer Xchange. Retrieved 2016-11-02.
  10. ^ Tcl Fundamentals, Chapter 1 in Practical Programming in Tcl and Tk, ISBN 0-13-038560-3
  11. ^ Cite error: The named reference inception was invoked but never defined (see the help page).
  12. ^ "Uses for Tcl/Tk". Tcl Developer Xchange. Retrieved 2016-11-02.
  13. ^ "Cisco IOS Scripting with TCL Configuration Guide". Cisco Support. Retrieved 2016-11-02.