Tcl and its associated graphical user interface toolkit, Tk, can be used freely in your application, even if it is commercial. The Tk toolkit has been ported from X Windows to Windows and Macintosh. Shell programs let you execute other programs.
Shells are wonderful for automating routine chores.
It is the ability to easily add a Tcl interpreter to your application that sets it apart from other shells. Tcl fills the role of an extension language that is used to configure and customize applications. There is no need to invent a command language for your new application, or struggle to provide some sort of user-programmability for your tool. Instead, by adding a Tcl interpreter, you structure your application as a set of primitive operations that can be composed by a script to best suit the needs of your users. It also allows other programs to have programmatic control over your application, leading to suites of applications that work well together.