было заметить, в Computerworld Россия смиренно употребляют словечко "апплет", так как обозначаемые им компоненты приложений, написанные на Java, вошли в компьютерную жизнь настолько стремительно, что не дали шанса русскому языку родить пристойный эквивалент. Ревнители чистоты нашего отнюдь не девственно чистого языка скоро будут, видимо, комкать в ярости компьютерные издания: за апплетом грядет ТИКЛЕТ.

Тиклеты пробрались в компьютерное сообщество почти незаметно, под прикрытием апплетов. Мало кто о них знает, а между тем уже 15 тысяч модулей расширения к Netscape Navigator для запуска тиклетов забрали пользователи с сервера Sun. Происходит название от Tcl/Tk (Tool Command Language /Tool Kit), которые достаточно широко используются для написания прикладных программ для X Window. Tcl - удобный интерпретируемый язык сценариев, особенно эффективный при написании пользовательских интерфейсов программ. Tk - средство для работы с библиотеками виджетов. В отличие от тяжеловесного Motif, Tcl/Tk может обходится без C/C++, хотя, разумеется, в код C/C++ может быть включен Tcl-сценарий. Два этих языка работают лучше всего в тандеме.

Язык Tcl (который произносится вопреки ожиданиям как "тикл") был разработан в Sun Microsystems около шести лет назад. Заново рожденный сейчас, он ориентирован, как и Java, на сетевые применения, он платформно-независим (работает на всех Windows, Macintosh и Solaris 2.х) и имеет мощные механизмы защиты ("незнакомые" тиклеты исполняются в безопасном окружении Safe-Tcl). Обновленный Tcl/Tk будет работать в паре не с C++, а с Java, часто выполняя функции прототипирования сложных Java-апплетов. Язык хорош для "склевания" фрагментов кода, но достаточно мощен и сам по себе. Среди демонстрационных программ можно встретить, например, реализацию "Тетриса" на Tck, исходный текст которого состоит всего из 580 строк кода, а создатель Tcl, Джон Оустерхаут, утверждает, что сам удивился появлению написанной на Tcl работающей в режиме реального времени системе управления нефтяными платформами компании Shell, в которой около полумиллиона строк кода.

В отличие от Java, Tcl - не объектно-ориентированный язык, он, скорее, ближе к функциональным языкам. С появлением компилятора байтового кода он будет работать значительно быстрее. По вероятному применению Tcl расположится где-то рядом с Visual Basic, а Tk, соответственно, - с ActiveX, любимым детищам Microsoft, на которые возлагаются столь большие надежды. Sun, вслед за Java, вооружившаяся WebNFS, соответствующей CORBA полностью обновленной сетевой файловой системой, готова к грандиозному наступлению на рынке средств разработки сетевых приложений. Впрочем, у Sun другого выхода нет, так как Microsoft перешла от агрессивной маркетинговой политики к сверхагрессивной.

Sun выпустила в свет семейство программ для работы с технологией Tcl/Tk. В основной пакет Tcl7.5 Tk4.1 входят две программы: оболочка командного интерпретатора Shell и графический интерфейс разработки Wish, библиотека и документация. Интерфейс достаточно скромный и компактный, без "волшебников" и прочей роскоши, но с полноценной гипертекстовой справочной системой.

Наиболее популярен модуль расширения (Plug-in) к Netscape Navigator. Для работы он не требует основного пакета Tcl7.5 Tk4.1, при этом пользователь может не только исполнять тиклеты в окне Netscape Navigator, но и встраивать Tcl-сценарии в свои Web-страницы.

SpecTcl (вместе с SpecJava) - мощная среда разработки графических интерфейсов. Для работы требует Tcl7.5 Tk4.1.

WebTk Imagemap Editor - редактор для гипертекстовой графики. Тоже требует Tcl 7.5 and Tk 4.1.

Tcl Web Server - компактный полнофункциональный HTTP-сервер, целиком написанный на Tcl (около 1000 строк кода), работающий с CGI и использующий безопасный режим Safe-Tcl.


Игорь Левшин - научный редактор еженедельника "Computerworld Россия". С ним можно связаться по электронной почте: igor@osp.ru