Строки — точный Unicode-текст; tagged templates сохраняют domain intent и границы interpolation как typed values, не полагаясь на quoting целевого языка.
Политика
Обычные двойные и тройные кавычки используют {expression} и фиксированный escape set. Смежные registry tags: p, r, sh, sql, каждый с обеими формами строк. p несёт intent нормализации пути, r — regex с reduced escaping, sh — shell safety metadata без автоматического запуска, sql — parameter metadata без прямой вставки текста.
Определённое поведение
Interpolation вычисляется runtime и использует стандартный renderer. Tagged template сохраняет raw parts, interpolation spans и tag kind; SQL interpolation становится параметром. Triple-quoted content следует точному closing-indent. Между tag и delimiter не должно быть пробела; с пробелом tag — обычный identifier, juxtaposition не является вызовом.
Ограничения и явный отказ
Отклоняются backticks, ${expression}, одинарные кавычки, html, пользовательские и неизвестные adjacent tags, прямая SQL-вставка и утверждение, что sh выполняется. Вне adjacency tags не keywords. Нельзя выдумывать regex-детали сверх reduced-escaping floor и platform path rendering.
Отложенная граница
HTML templates, user tag registration, macros, compile-time выполнение, полностью фиксированный cross-platform regex dialect, shell execution и широкое path/filesystem behavior отложены либо принадлежат библиотекам и host surfaces.
Пример
let region = "EMEA"
let report = sql"""
SELECT name, total
FROM orders
WHERE region = {region}
ORDER BY total DESC
"""