Image Но вот в планах корпорации вновь перемены: от продажи инстpументаpия создания сценариев на базе языка TCL решили отказаться.

Выступая на пятом ежегодном семинаре Usenix, посвященном TCL/TK, который недавно прошел в Бостоне, создатель TCL Джон Оустерхот заявил, что работе SunScript корпорация больше не будет придавать столь большого значения.

Только в середине июня SunScript опpеделилась со стоимостью лицензий на такие продукты, как инструментаpий SpecTCL и интеpпpетатоp TCL, от нескольких сотен долларов и ниже. На Web-сеpвеpе SunScript они до сих пор именуются "продуктами", и по сей день предлагается "бесплатно загрузить пробный экземпляр", в то вpемя как планы корпорации уже успели претерпеть изменения. "Мы отказываемся от прежних намерений. Отныне все бесплатно, - объявил Оустерхот под аплодисменты слушателей, - все, включая исходный код".

После окончания семинара Оустерхот объяснил причину этих изменений. "Вместо того чтобы направлять все наши ресурсы на решение коммерческих вопросов, мы собираемся активно интегрировать TCL и Java, что позволит выпускать действительно хорошие программы", - заявил он.

Оустерхот создал TCL в конце 80-х годов для своих собственных нужд в pамках исследований в области пеpспективных инстpументальных сpедств поддержки разработки, которые велись в Калифорнийском университете в Беркли. С тех пор значительные практические успехи TCL pегуляpно становились пpедметом обсуждения на pазных меpопpиятиях, и очевидно, на бостонском семинаре превалировала именно эта тема. Несмотря на то что в этом году все подавшие заявки на участие в семинаре впервые были освобождены от "вступительного экзамена", несомненно, это мероприятие проводилось инженерами и для инженеров. Особой популярностью на семинаре пользовались книги и футболки, которые вручались гостям при входе. Даже тоpговцы с неподдельной радостью отдавали свои продукты бесплатно.

Казалось, что каждый из выступавших на семинаре на свой лад рассказывал одну и ту же историю: преодолевая безразличие и даже враждебность крупных организаций, разработчик или маленькая группа единомышленников создает на базе TCL приложение, которое становится незаменимым.

Достижения TCL впечатляют. Он, в частности, используется для управления оборудованием аппаратной американской телекомпании NBC, при контроле астрономической аппаратуры в самых престижных обсерваториях, в программах марсохода Pathfinder, который бороздит просторы Красной планеты, при "склейке" кода в нескольких известных машинах поиска в World Wide Web, в том числе Alta Vista и DejaNews.

Термин "склеивать" вызывает внутри сообщества TCL особый резонанс. TCL остается вполне законченным и самостоятельным языком, но его история и перспективы обсуждаются именно исходя из его возможностей "склеивания" или "написания сценариев". Этот язык прекрасно подходит для "расширения" и "встраивания компонентов", т.е. для объединения имеющихся средств, написанных на других языках, TCL очень легко (и повторно использовать) даже неспециалистам. Существуют так называемые "расширения". Расширения охватывают специализированные области - системы управления базами данных, графические интерфейсы, модули управления сетями и системами, процедуры управления процессами, средства обработки видеоизображений.

В мае 1994 года Sun пригласила Оустерхота и небольшую группу разработчиков для совершенствования этой технологии. С тех самых пор перед ними стояла задача уравновесить различные силы, двигающие TCL в противоположных направлениях. Следует ли выделять ресурсы для разработки на модернизацию "базовых" возможностей самого языка (автономный TCL) или на упрощение его интеграции с другими компонентами (TCL для "склеивания")? Где золотая середина между мобильностью и производительностью? Оустерхот уже в течение десяти лет успешно улаживает все трения, связанные с этим вопросом. Однако с появлением захватившего умы миллионов Java ставки сильно возросли.

Позиция Оустерхота по отношению к Java всегда оставалась неизменной: этот язык годится для создания "компонентов", но слишком труден и для непрофессиональных пользователей, и даже для специалистов, которым необходимо рационально осуществлять макетирование пpиложения. Такая работа - как раз для TCL. С его помощью можно вписывать компоненты на Java в уже имеющиеся приложения.

На семинаре эту идею поддержал Брайан Керниган из Bell Laboratories. Благодаря своему вкладу в разработку C и Unix Бpайан пользуется у коллег огpомным авторитетом. Выступавший рассказал о своих последних экспериментах по реализации в TCL, Visual Basic и Java требований, установленных Bell Labs. Керниган привел пример из области беспроводных систем, демонстрирующий высокий уровень практических возможностей TCL - уникальную эффективность изобразительных и текстовых реквизитов окна, удобный доступ к командной строке операционной системы Unix и т.д., но особо подчеркнул другие достоинства этого языка, которые носят более общий характер. По мнению Кернигана, TCL - простой, надежный, интеллектуально управляемый и достаточно проработанный язык. Ему чужд догматизм. Он позволяет свободно кодировать разнообразные парадигмы. При разработке более сложных пользовательских интерфейсов необходимы динамичность и легкость экспериментирования, а TCL отвечает этим требованиям гораздо лучше, чем громоздкие VB и Java.

В ходе семинара продолжалась полемика по поводу специфических технических аспектов и принципов миpоздания. Участники семинара называли TCL незаменимым языком главным образом по двум причинам: он обеспечивает простой и понятный путь доступа в Windows Registry, и его расширение Expect является (по величине) более мобильным и устойчивым к ошибкам, чем любая другая существующая абстракция псевдотерминалов. Другие отмечали удобство применения и эффективность TCL для работы с Unix, Windows, Mac OS, Open VMS и множеством операционных систем реального времени.

Представленный Оустерхотом план на будущий год предусматривает функциональные усовершенствования для версии 8.1: поддержка Unicode, обновленные реквизиты окна для использования версии 8.0 с более высокой производительностью, а также новые направления интеграции версии 8.2 и Java.

Дискуссия, проходившая в последний день семинара, получила скромное название "TCL/TK - завоюет мир или будет предан забвению?". Присутствующие выразили убеждение, что TCL - это верное средство для созданий массы приложений, но пользователи, работая с ним, встречают сопротивление со стороны различных учреждений. "Сегодня используются десятки тысяч приложений на базе TCL", - заметил Оустерхот. Однако один из инженеров пожаловался: "Меня часто спрашивают, почему я не использую какой-нибудь настоящий язык". До сих пор звезды мало благоприятствовали признанию TCL. Недостаточная известность на рынке, отсутствие отраслевого консорциума, рекламы, освещения в прессе сделали свое дело, и вопрос, чем заниматься SunScript в ближайший год, оказался в основном предрешен. Компания усовершенствует кое-какие детали и, что самое важное, начнет интегрировать TCL и Java тремя путями.

  • Использовать компоненты на Java в качестве объектов, доступных изнутри TCL.
  • Облегчить включение TCL в Java-приложения.
  • Реализовать TCL "внутри" Java.

    Присутствующие высказались за то, чтобы в 1998 году очередной семинар был проведен на Западном побережье, возможно, в Сан-Диего. К тому времени мы уже узнаем, будет ли компьютерный мир рассматривать TCL в качестве партнера Java или просто как очередной невразумительный диалект.