Знаете какие-нибудь творческие способы сопряжения Python с Tcl?

StackOverflow https://stackoverflow.com/questions/1004434

  •  05-07-2019
  •  | 
  •  

Вопрос

Вот такая ситуация.Компания, в которой я работаю, располагает довольно большим количеством существующего кода Tcl, но некоторые из них хотят начать использовать python.Было бы неплохо иметь возможность повторно использовать часть существующего кода Tcl, потому что это уже потраченные деньги.Кроме того, часть тестового оборудования имеет только Tcl API.

Итак, одним из способов, о которых я подумал, было использование модуля subprocess для вызова некоторых сценариев Tcl.

  • Является ли подпроцесс моим лучшим выбором?
  • Кто-нибудь использовал этот довольно новый фрагмент кода: Оперение?Если да, то каков ваш опыт (не только в отношении ТЗ)?
  • Есть какие-нибудь другие возможные способы, которые я не рассматривал?
Это было полезно?

Решение

Я надеюсь, вы готовы к этому.Стандартный Python

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

Отредактируйте в Re, чтобы прокомментировать:Интерпретатор tcl Python не знает о других установленных компонентах tcl.Вы можете справиться с этим, добавив расширения обычным способом к tcl, который фактически использует python.Вот ссылка с некоторыми подробностями

Другие советы

Это можно сделать.

http://wiki.tcl.tk/13312

Конкретно посмотрите на расширение typcl.

Typcl - это немного странно...Это расширение для использования Tcl От Питон.На самом деле это не требует CriTcl и могло бы быть сделано в стандарте C.

Этот код демонстрирует использование Tcl в качестве разделяемой библиотеки и подключение к ней во время выполнения (архитектура заглушек Tcl делает это восхитительно простым).Кроме того, Typcl по возможности избегает преобразования строк (обоими способами).

Я сам им не пользовался, но ГЛОТОК может вам помочь:

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top