К основному содержанию
T TON Adoption
← Словарь
NODE/03 · Term

Tact

Высокоуровневый язык смарт-контрактов TON со строгой типизацией и синтаксисом, похожим на TypeScript. Снижает порог входа для разработчиков из EVM-экосистемы.

Синонимы: tact lang, tact language, язык tact

Tact — современный язык программирования контрактов под TVM. В отличие от FunC, он скрывает большую часть низкоуровневой механики (ручная сериализация cell, работа со стеком) за синтаксисом, более привычным разработчикам из мира Solidity и TypeScript.

Что предлагает

  • Строгая статическая типизация с автоматическим выводом типов.
  • Структуры и сообщения как first-class сущности. Объявил message Transfer { amount: Int; to: Address; } — компилятор сам сгенерирует код сериализации/десериализации в cell.
  • Получатели сообщений в стиле акторной модели: receive(msg: Transfer) { ... } — наглядно отражает асинхронную природу TON.
  • Стандартная библиотека с готовыми реализациями jetton, NFT, ownable, deployable-контрактов.

Когда выбирать Tact

Tact хорош для:

  • MVP и быстрых прототипов. Скорость разработки в 2-3 раза выше, чем на FunC.
  • Контрактов средней сложности — NFT-коллекции, простые DAO, утилитарные jetton-ы, лотереи.
  • Команд, у которых нет опыта с TVM. Концепции акторов, типизированные сообщения и понятные ошибки компилятора снижают порог входа.

FunC всё ещё предпочтителен для критической инфраструктуры с большим TVL, где каждая единица газа имеет значение и нужна максимально предсказуемая стоимость исполнения.

Цена абстракции

Сгенерированный из Tact байткод обычно тяжелее ручного FunC на 20-50%, что напрямую влияет на стоимость деплоя и комиссии. Для пользовательских контрактов это малозаметно — речь о долях цента на транзакцию. Для высокочастотных сценариев с миллионами вызовов стоит считать.

Инструменты

  • Tact Compiler — официальный компилятор, доступен через npm как @tact-lang/compiler.
  • Blueprint — тот же фреймворк, что и для FunC, поддерживает Tact из коробки.
  • VS Code extension — подсветка, автодополнение, интеграция с компилятором.
  • Tact Playground — онлайн-редактор для быстрых экспериментов.

Документация — docs.tact-lang.org. Tact активно развивается под кураторством TON Studio: в 2025 году добавлена поддержка traits, generic-функций, inline-deployment.

См. также