Pregunta

Aquí está la situación. La compañía para la que trabajo tiene un poco de código Tcl existente, pero algunos de ellos quieren comenzar a usar python. Sería bueno poder reutilizar parte del código Tcl existente, porque eso es dinero ya gastado. Además, algunos de los equipos de prueba solo tienen API de Tcl.

Entonces, una de las formas en que pensé fue usando el módulo de subproceso para llamar a algunos scripts Tcl.

  • ¿El subproceso es mi mejor apuesta?
  • ¿Alguien ha utilizado este código bastante nuevo: Plumage ? Si es así, ¿cuál es tu experiencia (no solo para Tk)?
  • ¿Alguna otra forma posible que no haya considerado?
¿Fue útil?

Solución

Espero que estés listo para esto. Python estándar

import Tkinter
tclsh = Tkinter.Tcl()
tclsh.eval("""
    proc unknown args {puts "Hello World!"}
    }"!dlroW olleH" stup{ sgra nwonknu corp
""")

Editar en Re para comentar : el intérprete tcl de Python no tiene conocimiento de otros componentes tcl instalados. Puede lidiar con eso agregando extensiones de la forma habitual a las que realmente usa python tcl. Aquí hay un enlace con algunos detalles

Otros consejos

Esto se puede hacer.

http://wiki.tcl.tk/13312

Específicamente mira la extensión typcl.

  

Typcl es un poco raro ... Es una extensión para usar Tcl de Python.   Realmente no requiere CriTcl y podría haberse hecho en el estándar C.

     

Este código demuestra el uso de Tcl como biblioteca compartida y su conexión.   en tiempo de ejecución (la arquitectura de los stubs de Tcl hace que esto sea deliciosamente simple).   Además, Typcl evita las conversiones de cadenas cuando sea posible (en ambos sentidos).

No lo he usado, pero SWIG podría ayudarte:

http://www.swig.org/Doc1.1/HTML /Tcl.html

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top