Любое программное обеспечение опирается на какую-то "платформу". Платформа - это совокупность аппаратного и программного обеспечения, входящего в "список зависимостей".
Программа предоставляет небольшое количество функций (её "добавленная полезность") по сравнению с общим количеством существующих в операционной среде функций.
Если платформа у программы снизу, то интерфейсы, которая предоставляет программа наружу - сверху. Эти интерфейсы могут быть программными, или могут быть интерфейсами с человеком/пользователем (например текстовый интерфейс (консольный), интерфейс командной строки (REPL), или графический интерфейс).
Платформа сама-по-себе тоже предоставляет множество функций, только других. Если пользователи программы пользуются только интерфейсами программы, то требуется некий "туннель" для того, чтобы обращаться к функциям  платформы. Например если программа это SQL-клиент, то в платформу у неё входит серверная часть с парсером SQL-кода. Механизм sql-запросов в этом случае и является таким "гипертуннелем".
В стандартной библиотеке Си тоже есть такое явление. Для того, чтобы обращаться к ядру, существует "механизм системных вызовов". Он вроде бы ограниченный (как и язык SQL формализованный), однако количество доступных вызовов операционной системы может расти со временем без измненения этого механизма тунеллирования. И данных в базе может сохраняться тоже много, и для этого не приходится расширять язык SQL,

Мучает меня вопрос - нет ли какого-то слова для этого явления в целом, отличного от слова "гипертуннели"?

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

Есть ещё паттерн "адаптер", но тоже не то. У адаптера цель - адаптировать. А у гипертуннеля цель другая - "пробросить".

Отредактировано Лис (2023-03-26 20:21:37)