Как устроена Extella

Программа и её исполнение
настраиваются отдельно

CSPL отделяет сохранённую программу от обработчика, который выполняет её команды. Окно и агент дают разные способы вызвать эту программу.

Программа
Код, который сохраняют и вызывают по имени.
Агент
Находит, создаёт и вызывает программы через доступные инструменты.
Язык и обработчик
Язык указан в программе; обработчик определяет, как выполнить её команды.
Устройство
Машина с подготовленным исполнителем, языками и зависимостями.
Рабочий стол
Окна и приложения, через которые человек работает с программами.
Магазин
Публикация приложения для установки другим человеком. У него появляется отдельная копия.

Как программа выполняется в Extella

Схема вызова
01

Программа

ledger
01 add 5
02 add 7
03 sub 2

Код и язык

Программа хранится под именем. В её записи указан язык, на котором она написана.

Сохранена для повторного вызова
02

Устройство

Обработчик ledger
add nприбавить n
sub nвычесть n

Обработчик языка

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

Нужны язык и зависимости
03

Результат

total105 + 7 − 2

Ответ программы

Результат получает тот, кто вызвал программу: приложение, агент или другой код.

Возвращается вызывающей стороне
Вызов и ответ проходят через сервис Extella. Расчёт на языке ledger разобран ниже: программа, две версии обработчика и запись вызовов.

Обработчик можно менять
отдельно от программы

CSPL отделяет сохранённую программу от кода, который выполняет её команды на устройстве. В этом опыте обработчик изменили, а четыре программы не сохраняли заново.

Одна из четырёх программ · ledger

Текст программы остаётся прежним

add 5
add 7
sub 2
total: 10

Сумма: 5 + 7 − 2 = 10.

Ответы из записи вызовов от 2 октября 2026 года.

Что показал опыт

После замены обработчика суммы сохранились, а в ответах появились дополнительные поля. На этом примере меняется исполнение без изменения текста программ.

Границы вывода

Проверены язык из двух команд и четыре программы. Это не доказательство совместимости любого кода, ускорения или защитной изоляции. Формат ответа и зависимости нужно проверять отдельно.