Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

[ новости /+++ | форум | теги |    ]

Выпуск языка программирования Tcl 9.1

30.09.2026 11:08 (MSK)

Состоялся релиз Tcl/Tk 9.1, динамического языка программирования, распространяемого совместно с кроссплатформенной библиотекой базовых элементов графического интерфейса Tk. Основное распространение Tcl получил как платформа для создания интерфейсов пользователя и как встраиваемый язык, при этом Tcl также подходит для быстрого прототипирования, web-разработки, создания сетевых приложений, администрирования систем и тестирования. Код проекта распространяется под лицензией BSD.

Среди изменений:

  • Добавлена команда "unicode" для нормализации Unicode-строк и сопутствующий набор Си-функций Tcl_UtfToNormalized*.
  • Добавлена команда "timer" с реализацией монотонного (только увеличивающегося) таймера, обеспечивающего микросекундную точность и предназначенного для измерения длительности событий.
  • Добавлена команда "lfilter" для выбора элементов из списка.
  • Добавлена команда "interp set" для доступа к переменным в дочернем интерпретаторе без использования ресурсоёмкого вызова "interp eval".
  • В команде "subst" реализованы опции "-backslashes", "-commands" и "-variables" для управления экранированием, выполнением команд ([cmd]) и раскрытием переменных ($var) в подстановках.
  • В команду "switch" добавлена опция "-integer" для сравнения значений как целых чисел, а не строк.
  • Добавлена возможность использования в выражениях "expr" большинства математических функций, определённых в стандарте C99.
  • При встраивании кода Tcl в C/C++ приложения теперь обязательно выполнение инициализации функцией Tcl_FindExecutable или TclZipfs_AppHook.
  • Добавлены новые Си-функции Tcl_IsEmpty, Tcl_GetEncodingNameForUser, Tcl_AttemptCreateHashEntry, Tcl_ListObjRange, Tcl_ListObjRepeat и Tcl_ListObjReverse.
  • Внутренний C API для работы со временем переведён c использования структуры Tcl_Time на 64-разрядный тип "long long".
  • Для платформы macOS реализована поддержка файловых путей, для которых не учитывается регистр символов.
  • На платформе Windows усовершенствован поиск исполняемых файлов при выполнении команд auto_execok и exec.
  • Переработан код поиска библиотек и файлов с кодировками.
  • Снижено потребление памяти при работе с большими списками.
  • Проведена работа переводу внутренних структур на 64-разрядные типы.
  • В библиотеке Tk добавлена поддержка экранных ридеров и двунаправленного текста. Реализованы виджет ttk::toggleswitch и команда tk attribtable. Предоставлена возможность поворота текста на метках. Прекращена поддержка визуального стиля Windows XP.


  1. Главная ссылка к новости (https://www.tcl-lang.org/softw...)
  2. OpenNews: Выпуск языка программирования Tcl 9.0
  3. OpenNews: Выпуск языка программирования Tcl 8.6.14
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/66371-tcl
Ключевые слова: tcl
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (68) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.8, limafresh (ok), 12:16, 30/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/–
    Отлично, что столь древний язык+GUI-тулкит развивается. Помню как писал на нём змейку, собрал в freeWrap бинарь, и он запускался даже на 10-летней Kubuntu 16.04, наверное и на ещё более ранних запустился бы. Не каждый стек может таким похвастаться.
     
     
  • 2.12, Аноним (12), 12:33, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • –11 +/–
    Ты себя то слышишь?
     
     
  • 3.13, limafresh (ok), 12:40, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/–
    Я себя да, а вы себя?
     
     
  • 4.14, Аноним (12), 13:03, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • –7 +/–
    Тогда у тебя мякиш какой-то в башке, без обид. Интерпретируемый привет мир нет сложностей запускать, но даже если ты статически слинкуешь с либц, либц новых систем не обязана работать на старых системах (как и наоборот впрочем, в текущих ядрах даже дропнули совместимость с костылями 32 битных либц).
     
     
  • 5.16, limafresh (ok), 13:09, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Интерпретируемый привет мир нет сложностей запускать

    Расскажите это питоновскому print("Hello, world!"), упакованному в PyInstaller. Он не смог. И это простая консольная программа, не требующая графики. А змейка это уже как минимум GUI-программа.

     
     
  • 6.17, Аноним (12), 13:17, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/–
    PyInstaller, видимо, не настолько всратый, чтобы линковать все зависимости статически. Для начала, он либц не линкует, поэтому нужно собирать на более старой платформе. Попробуй PyOxidizer, он поддерживает статическую линковку.
     
  • 6.78, Аноним (78), 01:27, 01/10/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     
     
  • 7.82, limafresh (ok), 08:24, 01/10/2026 Скрыто ботом-модератором     [к модератору]
  • +/–
     
  • 5.41, Аноним (41), 16:14, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    > если ты статически слинкуешь с либц

    А он что-то говорил про статическую линковку с glibc?

    > либц новых систем не обязана работать на старых системах

    Иди погуги, какая версия ядра стоит на упомянутой Kubuntu 16, и какая минимальная версия нужна самой свежей glibc. Тебя ждет большой сюрприз.

    > Тогда у тебя мякиш какой-то в башке

    Какая ирония...

     
     
  • 6.46, Аноним (12), 17:04, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Он хочет запускать бандленный бинарь с текущей среды на старой. Тут упс, начиная с либц и дальше по списку. И конечно, не у всех внешних библиотек будет совместимость в принципе. Всё остальное не имеет значения.
     
     
  • 7.49, Аноним (41), 17:34, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +8 +/–
    Ты, наверное, невнимательно читал, но его бинарь уже запустился на строй системе. Так что "упс" тут только у тебя случился.
     
     
  • 8.52, Аноним (12), 18:25, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Он видимо статически слинковал, там есть такая опция Потому что иначе он не мог... текст свёрнут, показать
     
     
  • 9.53, limafresh (ok), 18:34, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    Ничего я целенаправленно не линковал, просто ввёл в консоль что-то вроде free... текст свёрнут, показать
     
     
  • 10.57, Аноним (12), 19:52, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    По умолчанию статической линковки нет, что-то ты не договариваешь В любом случа... текст свёрнут, показать
     
     
  • 11.60, limafresh (ok), 20:12, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Вы для начала ознакомьтесь с программой упаковки freeWrap https freewrap deng... текст свёрнут, показать
     
     
  • 12.65, Аноним (12), 20:49, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    Интерпретатор не сам по себе работает, это не го или раст Требования к исполняе... текст свёрнут, показать
     
  • 9.71, Аноним (41), 22:14, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Ну, или третий третий вариант ты просто с апломбом наложил себе в штаны ... текст свёрнут, показать
     
     
  • 10.75, Аноним (12), 23:10, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Даже если там нет зависимости от либц что маловероятно , это ничего не меняет ... текст свёрнут, показать
     
  • 2.36, Аноним (36), 15:49, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    А т.к. никакие жаваскриптеры и пехепешники в него не лезут - то и прекрасно себя чувствует, и дальше будет)
     
  • 2.42, Аноним (41), 16:36, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    > столь древний язык

    Древний? Он на год моложе Perl и на 4 старше Python.

     
     
  • 3.44, Аноним (44), 16:57, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Э... так они то же древние.
     
  • 2.83, user1985 (?), 09:11, 01/10/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Плюсую! Годный язык.
     

  • 1.10, Аноним (10), 12:26, 30/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/–
    оно где-нибудь используется, кроме gitk?
     
     
  • 2.11, limafresh (ok), 12:29, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/–
    Tk используется как основа для Tkinter - самой известной GUI-библиотеки в Python. Вроде, если не ошибаюсь, на нём написан официальный GUI для git.
     
     
  • 3.85, Аноним (85), 09:20, 01/10/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Написал LLM агента на Python с tkinter GUI.
    Легковесный, в отличие от веб-браузера.

    На дистре с tcl-8 падает в одном единственном месте
    при обработке одной конкретной utf-8 строки.
    На дистре с tcl-9 работает нормально.
    Прогресс с tcl-9 на лицо.

     
  • 2.15, Аноним (15), 13:05, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +7 +/–
    Все что связано с написанием RTL (Verilog, VHDL) везде используется Tkl. В автоматизации, в валидации, в моделировании сигналов, в тайминг анализаторах и т.д и т.п., везде там используется Tkl.
     
     
  • 3.21, Аноним (21), 14:11, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Но уже посматривают в сторону Python. Вот один из вестников https://www.cocotb.org/
     
     
  • 4.59, Аноним (59), 20:05, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    А зря. Python всё больше и больше не даёт быстро посчитать, а точно считать он не умеет с py3k.

    И REPL-культуру в нём с какого-то момента вымели подчистую, особенно явно это стало видно с пришествием любителей асинков.

     
     
  • 5.62, Аноним (21), 20:26, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    Так здесь не про счёт, а про симуляцию.

    А что значит не умеет точно считать?

     
  • 5.63, Аноним (21), 20:29, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Так здесь не про счёт, а про симуляцию.

    А что значит не умеет точно считать?

     
  • 5.69, Инопланетянин (?), 21:56, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > И REPL-культуру в нём с какого-то момента вымели подчистую, особенно явно это стало видно с пришествием любителей асинков.

    Как репл связан с асинком?

     
  • 5.74, Аноним (74), 22:33, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > А зря. Python всё больше и больше не даёт быстро посчитать

    Это бы значило что язык замедляется, но это не так.

    > а точно считать он не умеет с py3k.

    Питон 3 никто не называет py3k. Ты в глаза его не видел, или понтами что ты типа знаток сам себя переиграл? И расскажи же нам, что там пострадало в точности вычислений по сравнению с 2 питоном. Может ты просто про оператор // не знаешь?

    > И REPL-культуру в нём с какого-то момента вымели подчистую, особенно явно это стало видно с пришествием любителей асинков.

    Асинк в REPL дёргается так же как синхронный код. Конкретные будут претензии?

     
  • 3.28, kusb reg (ok), 15:18, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Он и создавался как внутренний и командный язык чтобы скриптовать программы для разработки электроники.
     

  • 1.18, Аноним (18), 13:28, 30/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/–
    Почему-то вопли всегда на 99 процентов либо от 1) неосиляторов или 2) ущербных.
     
     
  • 2.45, Аноним (44), 17:02, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Почему-то вопли всегда на 99 процентов либо от 1) неосиляторов или 2) ущербных.

    Вопли от всех. Вот я его использовал. Мне казалось нормальным. Да - жутчайшие проблемы с экранированием, собенно когда генеришь генератор.

    Но потом оказалось, что те, кто хотели что-либо поправить - сами поправить не могли. Не знали тонкостей и все ломали. А тонкостей там, да весь язык - сплошные тонкости.

     

  • 1.30, жявамэн (ok), 15:40, 30/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/–
    Непонятно кому это нужно кроме древних легаси проектов.
    Что то новое делать на этом ну... как на перле
     
     
  • 2.32, ant2 (?), 15:46, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    То ли дело bash!
     
     
  • 3.35, жявамэн (ok), 15:49, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    И давно баш себя назввает ?
    >сновное распространение Tcl получил как платформа для создания интерфейсов пользователя и как встраиваемый язык
     
     
  • 4.40, ant2 (?), 16:13, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Надо внимательнее к предметной области.
    Tcl был сделан как человеческое решения вместо скриптов всяких *sh.

    Как бы он Tool Command Language

     
  • 2.34, Аноним (36), 15:47, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    Простой встраиваемый интерпретатор. Вполне себе сравним с Lua. А что именно выбирать - уже вкусовщина.
     
     
  • 3.47, Аноним (44), 17:04, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    > Простой встраиваемый интерпретатор. Вполне себе сравним с Lua. А что именно выбирать - уже вкусовщина.

    Напишешь конфиг на lua - поправит любой, даже ничего не знающий.

    Напишешь конфиг на tcl - даже знающий побоится что-либо трогать. А вдруг у тебя команда переопределена и делает что-либо другое.

     
  • 2.37, kusb reg (ok), 15:53, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А почему? В чём-то они как будто противоположность.

    Perl - сложность, сложные правила, много способов сделать X.
    Tcl - простые правила парсинга, всё есть x, единый подход.

     
     
  • 3.50, kusb reg (ok), 18:10, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Хотя... Пишется код который генерирует код, который генерирует код, который генерирует код, который сам себя парсит, имена процедуры хранятся в переменных, которые складываются друг с другом...
     
     
  • 4.84, user1985 (?), 09:13, 01/10/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Это уже зависит от программиста.
     
  • 2.39, Аноним (41), 16:01, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/–
    > кому это нужно кроме древних легаси проектов.

    Буквально всем, кому нужен свой DSL язык.

    Бонусом идут проверенная в бою экосистема и либы на все случаи жизни, включая GUI.

    Это не для конечных пользовательских продуктов - это для внутренних тулзов.

    > Непонятно
    > новое делать на этом ну... как на перле

    Сперва ты пишешь, что вообще не понимаешь, что такое Tcl и зачем он нужен - и тут же даешь свое ценное мнение о том, каково на нем делать новые проекты? Опеннетная экспертиза как она есть...

     
     
  • 3.55, Аноним (74), 19:10, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • –7 +/–
    > Буквально всем, кому нужен свой DSL язык.

    Ни один нормальный проект сегодня в качестве встроенного языка TCL не выберет)

    > Бонусом идут проверенная в бою экосистема и либы на все случаи жизни

    tcl никогда не был настолько популярным чтобы эта экосистема была вообще когда либо "проверенной в бою" и либы были "на все случаи жизни", а на настоящий момент она ещё и фатально устарела во всем что вообще могло устареть. Даже с поддержкой юникода плохо.

    > включая GUI.

    Не включая, а только GUI там в более-менее зрелом состоянии когда либо и был. Но это весьма специфический GUI - набросать пару кнопок и никому никогда не показывать (мы все видели поделия от любителей tk тут и на хабре), не более.

     
     
  • 4.66, Аноним (66), 21:09, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/–
    Ты не понимаешь значения слов DSL и внутренние тулзы , или что Диванная эксп... большой текст свёрнут, показать
     
  • 4.76, kusb (?), 23:14, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Дсл не то же самое, что чисто встроенный язык, они пересекаются не полностью и lua может подходить для такого создания собственных полу-языков на базе языка для задачи хуже. А Tcl и видимо Лисп - лучше.
     
  • 2.43, пох.. (?), 16:49, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/–
    как на нем вообще что-то делать когда он уже 25 лет не новый?!

    Со времен перехода на 8ю ветку ни один скрипт даже не сломался!  (да и семерочные даже не все пришлось обновлять)

    Я где по вашему буду харчеваться-то?! Один раз в 97м году заплатили и типа иди вася, гуляй?!  Пихон и pygtk кормят поколения "разработчиков" годами каждый день, и еще девляпсам перепадает, а не это вот!

     
  • 2.72, Анон1110м (?), 22:16, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    Да я я на нём делаю сайты. Всяко лучше PHP и JavaScript.
     
     
  • 3.79, Аноним (78), 01:31, 01/10/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    давай, расскажи, чем он лучше js?
     
  • 3.80, Шаула из резеро (?), 02:24, 01/10/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    жирно, нет, даже очень жирно
     
  • 3.89, нах. (?), 10:56, 01/10/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Да я я на нём делаю сайты.

    чет прямо воржал в голосину, и как, много сайтов наделал?

     

  • 1.31, ant2 (?), 15:44, 30/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    Единственный язык при освоении которого мои первые десять строчек кода на нем сработали сразу и без ошибок. Через десять минут чтения мануала я их сократил до пяти строчек и они тоже сработали. Много чего пробовал, но это так и осталось уникальным "первым касанием".
     
     
  • 2.38, kusb reg (ok), 15:57, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Вот да, похожий опыт. Но потом начинаю путаться в скобках и подстановках.
     
     
  • 3.51, 1 (??), 18:18, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Если не жалеть переменные, то через них проще. Меньше вложенности.
     

  • 1.61, Метрика (?), 20:23, 30/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/–
    Древний ЯП который популярнее раста
     
     
  • 2.70, Инопланетянин (?), 21:59, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/–
    И безопаснее! Безопаснее!
     
  • 2.73, Аноним (74), 22:25, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Шутишь? И по Tiobe и по PYPL rust в десятке, а TCL вообще ни в одном рейтинге нет. Место его рядом с коболом, только в отличие от кобола, на нём ничего бизнес-критикал никогда написано не было. Кобол, кстати, в обоих рейтингах есть, т.е. даже он популярнее.
     
     
  • 3.77, kusb (?), 23:18, 30/09/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Написаны разные тесты, макеты, внутренние вещи для проектирования электроники, что-то научно-астрономическое. Ещё некоторые люди выбирают его по причине понравилось, подходит, необычный язык для чего-то подходит лучше. Ну и непопулярность не говорит, что гарантированно всё плохо.
     
  • 3.90, Метрика (?), 11:06, 01/10/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А по факту TCL с его Tk юзаются на каждом углу, и да Tk без TCL не работает
     
  • 3.93, Инопланетянин (?), 15:47, 01/10/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > И по Tiobe

    Это рейтинг строится по запросам пользователей. Причем тут практический софт?

     

  • 1.67, Шаула из резеро (?), 21:27, 30/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/–
    в нулевые на сабже допиливал даемон для корпоративного чата, было больно
     
     
  • 2.91, Аноним (91), 15:09, 01/10/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А в чем боль-то заключалась? Tcl буквально один из самых простейших языков.
     

  • 1.68, etar125 (ok), 21:36, 30/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/–
    Прекрасный язык программирования. Идеальный для быстрого прототипирования тех же интерфейсов. Строил на нем генератор статических страниц для своего сайта и программу для ведения списка проектов, тестики ещё писать удобно.
     
     
  • 2.88, нах. (?), 10:55, 01/10/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    твой текст звучит как дешевый маркетинг из лендинга нулевых, без обид
     

  • 1.81, Дед (??), 02:25, 01/10/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/–
     

  • 1.92, OpenEcho (?), 15:46, 01/10/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    BTW, https://wiki.tcl.tk is down
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    XSQUARE
    Inferno Solutions
    Hosting by Hoster.ru
    Хоcтинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить новость, Поддержать