Libertonia
Portada · Todo · Software Libre · Desarrolladores · Comunidad · Internet · Tecnología · Meta · Diarios
TCL/TK - El hermano pobre

Programación
Por runlevel0
departamento Fauna-en-peligro , Sección Desarrolladores
Puesto a las Tue Sep 24th, 2002 at 10:52:51 AM CET
Un pequeño, flexible y amable lenguaje de programación y GUI apto para todos los públicos. Hoy en día dejado de lado por muchos, pero que sigue siendo la solución ideal para crear GUIs para esos casposos scripts bash de cosecha propia que tenías por ahí.

 


Bueno, como programador la verdad es que soy un cero a la izquierda, no (sólo) por malo, sino por ¿vago? bueno, más bien por falta de tiempo, trabajando jornada completa te quedan sólo los fines de semana y a veces uno está tan estresado. Así que estuve buscando el lenguaje ideal para hacer QADC (Quick And Dirty Code, Código Rápido Y Sucio).
Ya que sabía C y (por supuesto) Bash, me decidí primero por Python, cuya sintaxis se parece además a Octave, dado que en primera instancia lo que pretendía era crear pequeños programas para realizar cálculos matemáticos.

Hacía tiempo que conocía aplicaciones TCL/TK: aquél fantástico Tkdesk ideal para usarlo FVWM2 y con el que no echabas a faltar KDE, ni Konqueror (bueno, cuando empecé a usarlo no existían...), Tkrat, un programa de correo bastante bueno y por supuesto nuestro viejo conocido: el xconfig del kernel (!)

Mi primera aproximación a TCL/TK fue un día hace ya muuucho tiempo, en mis primeros años con Linux, ayá por el 1995 / 96, cuando estaba instalando una SuSE 5.3 y me fijé en spectcl un primitivo constructor de GUI para TCL/Tk, pero con un aspecto bastante conseguido.
Nunca hice nada con él, sólo algúna prueba del tutorial y allí se quedó olvidado.
Hace un par de años descubrí Visual TCL y me llamó la atención, así que me fuí a google y busqué todo lo que pude sobre TCL/TK:
El lenguaje me apasionó, ¡era exáctamente lo que necesitaba!
TCL es un lenguaje de script, más fácil que Perl o incluso que Bash (o por lo menos más "claro"), con algunas de las carácterísticas de Python en cuanto a listas, y casi lo mejor: me permitía correr otros ejecutables ajenos a TCL/TK con una facilidad pasmosa, tan fácilmente como desde un script de bash. Eso unido al hecho de que crear un GUI es trivial, tan trivial que al final puedes olvidarte de los entornos tipo VisualTCL, XF u otros: Ya publique por aquí mi "Zenfire", un firewall mínimalista con gui y todo en apenas 35 lineas, la mayoría espacio en blanco.
Existe un plétora de entornos para crear GUIs, librerías para las más variadas aplicaciones.

Además puedes encontrar utiliades de ayuda como tclhelp o el muy didáctico TclTutor La característica más curiosa de TCL es que se trata de un lenguaje es su forma de usar las variables; una vez definida una variable esta puede ser usada para crear órdenes nuevas al vuelo, ya que lo que hace el intérprete (TCL/TK es un lenguaje interpretado) es "expandir" la variable:

set com "make"
set mod "modules"
set mod_i "modules_install"
exec [puts "$com $mod \&\& $com $mod_i" ]


Esto por ejemplo daría como resultado que se ejecutara:

make modules && make modules_install


Evidentemente este ejemplo es bastante absurdo, pero basta para hacernos una idea.
TCL/Tk tiene a mis ojos, la principal virtud de ser asequible para el usuario medio que podría querer símplemente ponerle un GUI a ese scriptcillo que tiene por ahí, pero también es posible hacer cosas ma complejas, puede incluirse código en C o C++ o puede usarse para crear el GUI para aplicaciones en cualquier lenguaje (basta crear el layout en vtcl y usar órdenes exec asociadas a los diferentes eventos).

En fin, puede que sea considerado un "apestado" por los que usan toolkits como GTK o QT con sus Glade y sus Kdevelop, pero TCL/TK es un encanto de lenguaje, tal vez no sea el más rápido, ni el más 31337, tal vez no se quede tan bien como cuando se dice "piloto Perl", pero es para mí un lenguaje pequeñito y amable que me ha llegado al corazón.
Es por eso que me da verdadera lástima que esté bajando progresivamente de popularidad en favor de Python, Perl y otros, que ni mucho menos desmerecen, pero no son TCL/TK.
< MySQL con motor de transacciones (5 comments) | Publicación de contenidos de Libertonia via RDF (novedades) (1 comments) >
Enlaces Relacionados
· Tkdesk
· Tkrat
· spectcl
· Visual TCL
· XF
· TclTutor
· More on Programación
· Also by runlevel0

Encuesta
¿Conoces TCL/TK?
· Sipe, lo uso habitualmente 23%
· Si, lo he usado 21%
· Lo conozco pero no me gusta 15%
· Nope, ni idea macho 34%
· Basura, lenguaje para lamers y nenazas 5%

Votos: 38
Resultados | Otras Encuestas

Menu
· crear cuenta
· FAQ
· búsqueda
· Fuentes de Noticias

Login
Nueva cuenta
Usuario:
Contraseña:

Ver: Modo: Orden:
TCL/TK - El hermano pobre | 5 comentarios (5 temáticos, editoriales, 0 ocultos)
Tcl para generar dinámicamente HTML (4.00 / 1) (#4)
por preage a las Thu Sep 26th, 2002 at 12:13:38 AM CET
(Información Usuario) http://geocities.com/dariapra

Tcl es también un buen lenguaje para generar HTML de forma dinámica.

Conocí Tcl gracias a que donde trabajo se usa la plataforma Vignette, que utiliza un lenguaje de programación basado en Tcl. Trabajar con esta plataforma es un suplicio, pero desde luego no lo es estar basada, desde el punto de vista del lenguaje de programación en Tcl. Así conocí Tcl y ahora estoy ampliando mis habilidades con este lenguaje (¡cuando tengo tiempo!). En http://www.softpanorama.org, Nikolai Bezroukov dice que Tcl ha sido tratado injustamente por la industria informática (no dice exactamente eso) y que merece más éxito del que tiene. En mi opinión no le falta razón.

De todas formas, no utilizaría Tcl para desarrollar un website grande, no tiene el "soporte" que tiene Java o PHP (¡sniff!).

Una característica de Tcl/Tk que me ha sorprendido gratamente es la facilidad con la que se pueden escribir aplicaciones que usen GUI. ¡Parece mucho más fácil y rápido que hacerlo con Java o C++! Me imagino que debido al caracter multiplataforma de Tk no se explotarán todas las características del GUI del SO. Para solventar esto existen bindings para GTK (para KDE y Windows no sé si hay algo análogo). Si es tan fácil y rápido como Tk, mi elección para muchas cosas será Tcl.

Volviendo a la generación de HTML de forma dinámica, ¿alguien sabe dónde puedo encontrar documentación sobre mod_dtcl? En http://tcl.apache.org no he encontrado gran cosa.



ArsDigita (2.00 / 1) (#5)
por DopeRider a las Thu Sep 26th, 2002 at 12:47:32 AM CET
(Información Usuario)

Otra vez me sale Greenspun. Creo que su ArsDigita, ahora comprada por Red Hat, usaba bastante TCL para generar HTML. Lo recomienda en su web. La web de ArsDigita desapareció y la última vez que miré no habían montado casi nada en la de Red Hat.

[ Padre ]


 
Python (3.00 / 1) (#1)
por Ariel a las Tue Sep 24th, 2002 at 12:31:29 PM CET
(Información Usuario) http://www.milugar.net

Poco sé de Tcl/Tk así que quizá mi opinión no sea muy exacta. En cualquier caso creo creo que Python es la combinación perfecta de potencia/facilidad de uso, donde Perl pasa la potencia (pero no la facilidad de uso) y Tcl/Tk la facilidad de uso (pero poco la potencia)

Cuando empecé con Python, buscaba un script que me ayudase a mantener una web sencilla, de varios documentos html (ni php ni leches). El script tenía que encargarse sólo de buscar archivos modificados en un directorio (y subdirectorios) y subirlos aun ftp remoto. Me sorprendió las librerias para FTP que incorporaba Python y echando un vistazo a los módulos, vi que había para casi todo. Python era mi lenguaje.

A raíz de este primer contacto, navegué un poco y conocí Zope una herramienta completísima para servir webs o aplicaciones en la red. Me puse con ello y fruto de esto hice otra web aprovechando productos de Zope. Cabe decir que todo el scripting que se hace en Zope puede hacerse en Python lo que nos abre muchísimas posibilades.

Uff siento haberme extendido tanto,
Un saludo
--
Un saludo,
Visita mi lugar


Todo web (3.00 / 1) (#2)
por DopeRider a las Tue Sep 24th, 2002 at 12:53:42 PM CET
(Información Usuario)

Todo lo que has hecho parece estar relacionado con la web. Hago la observación simplemente porque si no me equivoco, la primera librería para hacer GUIs con Pitón era tkinter. Adivina con qué se conectaba ;-)

[ Padre ]


Cierto (2.00 / 1) (#3)
por Ariel a las Tue Sep 24th, 2002 at 01:39:22 PM CET
(Información Usuario) http://www.milugar.net

Nunca he programado GUIs con un lenguaje de scripts (de momento sólo con Kylix) pero por lo visto Tkinter/Tix está bien. Aunque viendo Glade a uno se le quita el hipo (los widgets de Tkinter son... ¿sosos?)
--
Un saludo,
Visita mi lugar
[ Padre ]


 
TCL/TK - El hermano pobre | 5 comentarios (5 temáticos, editoriales, 0 ocultos)
Ver: Modo: Orden:

ecol Logo Powered by Scoop
Todas las Marcas Registradas y copyrights de esta página son propiedad de sus respectivos dueños.
Los comentarios son propiedad del que los escribe.
Los iconos de las noticias y el logotipo son propiedad de Javier Malonda.
El Resto © 2002 Escomposlinux.org y aledaños.

Puedes sindicar los contenidos de libertonia en formato RSS 1.0 y RDF 0.9. También se puede sindicar la cola de envíos pendientes de moderación.

El proyecto escomposlinux.org está dedicado a la memoria de tas

crear cuenta | faq | búsqueda