Informatica Grafica
C A P I T U L O 1 Tcl/Tk

Tcl (Tool Command Language) es un lenguaje de programación interpretado y multiplataforma. Fue creado por John K. Ousterhout y su equipo de la Universidad de California, pero actualmente es desarrollado por Sun Microsystems Laboratories ( en concreto por su gupo SunScript, que lidera el propio Ousterhout) y distribuido de forma totalmente gratuita, aunque su uso sea para aplicaciones comerciales, a través de Internet. El intérprete puede ser encontrado en diversas direcciones, pero seguramente, la más rápida es la del servidor FTP de la Escuela Técnica Superior de Ingenieros de Minas de Oviedo.

http://www.etsimo.uniovi.es/pub/tcl/

Tcl es un lenguaje de comandos, cuyo intérprete recibe el nombre de tclsh (tclsh80 para Tcl/Tk 8.0), que tiene como una de sus principales características la gran facilidad con la que se pueden implementar funciones en C/C++ que pasan a ser nuevas instrucciones del intérprete. Es decir, se pueden embeber aplicaciones en C/C++ dentro del propio intérprete de Tcl; de esta forma es posible obtener nuevas versiones de Tcl, denominadas extensiones, que no dejan de ser otra cosa que intérpretes que aunan a los comandos originales de Tcl nuevos comandos escritos en C/C++.

Algunas de estas extensiones son BLT (que permite hacer representaciones gráficas en 2D), Itcl (Incremental Tcl, Tcl orientado a objetos), OraTcl (Tcl capaz de manejar bases de datos ORACLE), etc.

Pero sin duda, la extensión más conocida, y que es distribuida junto con el propio Tcl, es Tk (Tool Kit). Tk, creada por el propio John Ousterhout, proporciona un intérprete denominado wish (para Tcl/Tk 8.0, wish80), que añade a los comandos de Tcl, comandos capaces de crean interfaces gráficos de usuario. Es decir, Tk permite crear ventanas, botones, menús, barras de scroll, y toda una serie de elementos, propios de la programación con ventanas. A todos estos elementos los denomina widgets.

Tk se distribuye junto con Tcl en un paquete denominado Tcl/Tk, que proporciona los dos intérpretes citados anteriormente. El intérprete de Tcl puede ser eliminado ya que se encuentra incorporado en el intérprete de Tk.

La información contenida en este trabajo corresponde a la versión Tcl/Tk 8.0. En esta versión se ha dado un salto en el número de versión de Tk, de 4.2 a 8.0, con el fin de sincronizar este con el de Tcl, debido a que hasta el momento, al ser mucho más reciente Tk que Tcl estos eran muy dispares (7.5/4.1, 7.6/4.2, etc.).


Novedades de Tcl 8.0


Incompatibilidades de Tcl 8.0

http://www.sunlabs.com/research/tcl/compiler.html


Novedades de Tk 8.0

- Nombres más intuitivos tales como Bold 12.
- Si la fuente deseada no está disponible, Tk busca la más parecida.
- Tk soporta ahora nombres de fuentes cuyos atributos pueden ser modificados dinámicamente.
- Existe un nuevo comando font para la creación de fuentes y solicitar información acerca de las mismas.

Obtención de Tcl/Tk

Para obtener una distribución actualizada de Tcl/Tk, ya sea para Windows, UNIX o cualquier otro sistema para el que Tcl/Tk se encuentre disponible, se puede acudir a la dirección de la Escuela Técnica Superior de Ingenieros de Minas de Oviedo anteriormente citada.

Para ello, en cualquier navegador de Internet, se tecleará dicha dirección y se obtendrá, en pocos segundos, algo como esto:

En esta imagen puede verse el aspecto del directorio /pub/tcl del servidor de FTP de la Escuela de Minas. Pulsando con el ratón sobre un fichero, se procederá a su descarga en el directorio que desee el usuario.


Instalación

Tcl/Tk 8.0b1 se distribuye en forma de fichero ejecutable autoextraíble de un tanaño aproximado de 1.600K denominado tcl80b1.exe. Para instalarlo bastará ejecutar dicho fichero. Creará el árbol de directorios necesario, e instalará el icono de la aplicación en el grupo de programas del menú Inicio.

En este grupo de programas se instalará, como se ha comentado, un grupo denominado Tcl; y dentro de él se encuentran unos accesos directos, entre ellos los más importantes son Widget Tour, que permite, pinchando sobre él, acceder de una forma cómoda y fácil a todos los ficheros de ejemplo de Tk; también Tcl Help, que llamará a la ayuda de Tcl/Tk 8.0, que se encuentra en formato .HLP de Windows. Además se podrá invocar al intérprete de Tk (Wish) y al de Tcl (Tclsh).

El árbol de directorios generado es el siguiente:

De todos estos ficheros, los tres más interesantes son los señalados mediante una flecha: tclsh80.exe, wish80.exe y tcl80.hlp. El primero es el intérprete de Tcl, que funcionará desde una ventana de MS-DOS; el segundo es el intérprete de Tk, y el último es el fichero de ayuda de Tcl/Tk, en el cual se recogen todas las capacidades de cada versión, tanto de Tcl como de Tk.


Tclsh80

Es el intérprete de Tcl propiamente dicho, pero no tiene capacidad gráfica y se ejecuta en una ventana de DOS. Para ejecutarlo, se procede así

C:\TCL\bin> tclsh80

Con lo que aparecería el promt de Tclsh (%). A continuación se podrían escribir las instrucciones a ejecutar:

% set a 10

% 10

Para abandonar el intérprete:

% exit

C:\TCL\bin>

Como ya se ha explicado, Tcl no tiene capacidades gráficas por lo que se usará generalmente el intérprete de Tk, el cual auna el intérprete de Tcl con las capacidades gráficas. Tclsh80.exe puede ser borrado sin problemas.


Wish80

Es el intérprete de Tk. Para ejecutarlo, lo más cómodo es crear en el escritorio un acceso directo a este fichero ejecutable, y llamarlo mediante un doble click sobre el icono de dicho acceso directo. Al ejecutarlo, aparecerá la denominada Consola, que es el equivalente bajo Windows de lo visto anteriormente para tclsh80. Desde ella se pueden ejecutar las aplicaciones mediante el comando source seguido del nombre de la aplicación, incluyendo el path. Por ejemplo:

% source c:/tcl/lib/sio95/sioini95

El aspecto de la consola es el siguiente:




Bugs conocidos

Puede haber más bugs hasta ahora desconocidos. Se puede enviar un comentario sobre algún bug localizado en esta versión a la siguiente dirección:

Scott Stanton

scott.stanton@eng.sun.com

o al grupo de noticias comp.lang.tcl.


Ventajas de Tcl/Tk



Inconvenientes de Tcl/Tk



Manejo de la consola

Una de las cosas que más sorprende a aquellas personas que se acercan a Tcl/Tk procedentes de algún lenguaje compilado es la consola.

La consola de Tcl/Tk es una ventana similar a la que pudiera verse en las máquinas UNIX, que va a permitir ejecutar todas los comandos de Tcl y Tk desde ella, con lo que será posible comprobar si un comando funciona tal como se espera o no antes de insertarlo en el código de una aplicación, sin necesidad de escribir un fichero, grabarlo y ejecutarlo.

Aunque desde la consola es posible ejecutar todos los comandos de Tcl/Tk, existen comandos que parecen especialmente indicados para utilizar desde ella. Algunos de estos son:

Por otra parte, todas las variables que se hayan declarado como globales en un procedimiento pueden ser vistas y modificadas desde la consola en tiempo de ejecución.

Previous Page Next Page


© 1995-98, etsimo WWW team
Última modificación: 19 de Agosto de 1998 - 17:47:14