Было несколько сплавов Tcl-Python. Как комментирует Рэйф Кеттлер выше наброски, нужно начать со стандартной установки Python. Это включает в себя Tkinter, в который встроен полный интерпретатор Tcl, доступный, как описано на упомянутой вики-странице. Так что, да, возможно "сделать это в Python".
Я действительно не понимаю, как это связано с vmd , хотя. vmd уже встроил интерпретатор Tcl. Хотя я полностью поддерживаю цель «сокращения движущихся частей», чтобы у вас, например, один сценарий, а не два, что-то кодировал в Python, когда vmd уже предоставляет Tcl, это не кажется как шаг в направлении, в котором хочет идти Джейсон Р. Мик.
ЧТО-ТО ПОЗЖЕ: после обмена комментариями с Джейсоном Миком мне пришло в голову, что он может найти
#!/bin/bash
echo "Here's a bit of bash-iness."
MYSCRIPT='
puts "Here I am, inside Tcl."
puts "See? I can do calculations: [expr 3 + 5]."
exit 0
'
tclsh << HERE
$MYSCRIPT
HERE
наводит на мысль. Его выход, конечно, составляет
Here's a bit of bash-iness.
Here I am, inside Tcl.
See? I can do calculations: 8.
Я написал это в терминах tclsh , но, если я буду в курсе, Джейсон Р. Мик на самом деле захочет использовать vmd . Соответствующий гомолог для * vmd выглядит примерно так:
...
vmd -dispdev text -eofexit << HERE > output.log
$MYSCRIPT
HERE
Хотя я могу придумать несколько других способов объединения bash и Tcl, я считаю, что этот наиболее соответствует духу первоначального вопроса.
Хочу также отметить, что из того небольшого, что я знаю о vmd , было бы вполне уместно сделать то же самое с Python вместо Tcl: vmd is одинаково искусен с любым из них.
Наконец, и Python, и Tcl являются языками общего назначения, обладающими примерно такой же мощью, что и bash , поэтому еще одно направление развития этого проекта - написать его полностью на Tcl (или Python), а не Баш Встраивание сценариев, как показано выше, в Tcl (или Python), по крайней мере, так же просто, как в bash.