Tcl 是 "Tool Command Language"(工具命令语言)的缩写(发音为 "tickle")。Tcl 实际上分为两个部分:一种语言和一个库。
Tcl 是一种简单的文本编程语言,旨在向交互式程序(如文本编辑器、调试器和 shell)发出命令。它具有简单的语法,并且也是可编程的。
Tcl 用户可以编写命令过程,以提供比内置集中提供的命令更强大的命令。
其次,Tcl 是一个可以嵌入到应用程序中的库包。Tcl 库包含一个 Tcl 语言的解析器、用于实现 Tcl 内置命令的例程,以及允许每个应用程序使用特定于该应用程序的附加命令来扩展 Tcl 的过程。应用程序生成 Tcl 命令并将它们传递给 Tcl 解析器以执行。
命令可以通过从输入源读取字符生成,也可以通过将命令字符串与应用程序用户界面元素(如菜单项、按钮和其他小部件)关联生成。当 Tcl 库接收到命令时,它会将命令解析为组件字段并直接执行内置命令。
对于由应用程序实现的命令,Tcl 会回调应用程序以执行命令。在许多情况下,命令将通过传入要执行的附加字符串来递归调用 Tcl 解释器(事实上,过程和条件循环命令都以这种方式工作)。应用程序可以通过使用 Tcl 作为其命令语言获得许多优势。
重要的是要注意,Tcl 的设计理念是,程序员在设计大型软件系统时实际上应该使用两种或多种语言。一种用于操作复杂的内部数据结构,或在性能很重要的情况下使用,另一种(例如 Tcl)用于编写非常小的脚本,将其他部分粘合在一起,为用户扩展提供钩子。
对于 Tcl 脚本编写者来说,易于学习、易于编程和易于粘合比性能或复杂数据结构和算法的工具更重要。
Tcl 的设计目的是使您在遇到在较低级别更有意义的任务时,可以轻松地切换到较低级别的语言。这样,基本的核心功能可以保持很小,并且只需要引入特定需要或想要的部件。
关于“什么是 Tcl?”的一个答案可以在 www.NeoSoft.com/tcl /whatistcl.html 找到。
Tk(发音为 "tee-kay")是 Tcl 的一个扩展,它为程序员提供了 X11 窗口系统的接口。请注意,Tk 已在 X11 R4、X11 R5、X11 R6 以及 Sun 的 NeWS/X11 环境下成功编译。
许多用户将通过 "wish" 命令遇到 Tcl/Tk。"Wish" 是一个简单的窗口 shell,允许用户在原型环境中编写 Tcl/Tk 应用程序。
目前,Tcl/Tk 无法处理日语、中文、韩语……语言字体。
由于 Tcl 非常容易扩展,许多人尝试共享扩展,包括流行的 itcl、[incr Tcl]、ObjectTcl、TclX、Tix 和 BLT。
当然,这些扩展需要一个扩展的 Tcl 解释器。此外,许多 Tcl 免费应用程序需要特定的 Tcl 扩展才能运行。
最流行的扩展之一称为 Expect。它允许您在大多数基于命令行的 UNIX 应用程序(例如 ftp、telnet、rlogin、passwd、fsck 等)内部放置一个友好的前端。
Tcl/Tk 扩展的完整列表可以在 URL www.scr iptics.com/resource/software/extensions/ 找到。
本节包含有关 Tcl 8.0 和 Tk 8.0(Tcl/Tk 的最新版本)的信息。它们最初于 1997 年 8 月 18 日发布,最新的补丁版本 (8.0.3) 于 1998 年 9 月 3 日发布。
当您下载 Tcl 和 Tk 时,您会获得两个程序 wish 和 tclsh,它们支持脚本库和在线参考文档。这些程序是使用 Tcl 编写应用程序的通用平台。"Wish" 包括图形用户界面工具包 Tk。这些软件包在安装后即可使用。
Tcl 8.0 和 Tk 8.0 在以下操作系统的大多数版本上运行