Tcl/Tk: kit de herramientas multiplataforma veterano para CLI y GUI

Fuentes: Develop Cross-Platform CLI and GUI Tools With Tcl/Tk

Tcl/Tk es un entorno de desarrollo creado por John Ousterhout en 1990 que permite crear aplicaciones de consola y herramientas con interfaz gráfica para Windows, Linux y macOS a partir de un único código fuente. Combina un lenguaje de scripting interpretado, el Tcl, con un kit de widgets, el Tk, que genera interfaces de aspecto nativo en cada sistema operativo. Sus características incluyen programación orientada a eventos, hilos seguros, entrada/salida no bloqueante, corutinas y un footprint de unos 100 MB con la mayoría de paquetes habituales. La distribución es open source bajo licencia BSD, lo que permite modificarlo, redistribuirlo o venderlo sin restricciones.

El artículo explica los fundamentos del lenguaje: la homogeneicidad (el código Tcl es a su vez dato manipulable), el modelo «todo es una cadena», el uso de diccionarios y arrays, y el soporte de programación orientada a objetos mediante la extensión TclOO. También aborda la creación de aplicaciones autónomas mediante Starkits y Zipkits, ejecutables de un solo fichero que funcionan en cualquier plataforma soportada, y la construcción de aplicaciones web con el framework Wapp. Entre las limitaciones se mencionan peculiaridades de diseño, una comunidad reducida comparada con ecosistemas más populares y un perfil menos visible en la industria actual, pese a su uso continuado durante casi cuatro décadas y a hitos como la versión 9.0.