Но это очень старая тема -- "под каждый тип задачи свой язык" (то что там свои типы данных даже отдельно не обсуждалось). В чем пойнт? Автовыведение системы типов с проверками? Так весь хаскель об этом... Но волшебным оьразом оказывается что способов создать систему типов под конкретную задачу бесконечное множество и выживают только какие то эволюционно выжившие компромиссы коллективного творчества или там где есть жесткая диктатура "генерального конструктора".
PS
По сути проблема в создании метода эквивалентного PCA в котором можно "вращать систему координат" некой онтологии вводя новые понятия (в которых удобнее решать задачу).
«18 триплов, описывающих величину с указанием единицы измерения, я помню (). И никакого практического способа указать "x=5кг" вот этими вот пятью символами, ибо "шаблоны и как их выразить, чтобы не порушить формализм" было выдумано явно несвоевременно.»
А нет примера этих 18-ти? Очень любопытно
Если вспомнить про dml, в частности такие штуки как insert from select, update и их смесь upsert, не говоря уж о delete, то SQL вполне скорее и для манипуляций. Но, конечно, без императивной обвязки чтоб эти команды отправлять, оно всё не летает...
А так, обращаться за всяким вычисляемым, тут же заливать его в базу (знаний) на будущее (мемоизация тут же) — вполне себе работа для интерпретатора запросов...