Хаскель, пайтон и с++ |
[Jun. 15th, 2025|04:17 pm] |
Хочу свой язык для логики L4 , но пока не могу. Тоесть у меня были наработки лет 10 назад последние и какие-то "пробы пера", но чтобы серьезно "в долгую", чтобы годами этим заниматься , такого нет.
В принципе, некая формальная грамматика есть, но она уже устарела, потому что во-первых я продвинул саму L4 и там появились новые идеи и направления, а во вторых потому что мое понимание компиляторостроения изменилось теперь (это уже наверное лет 5 как) я хочу построить не просто компилятор, а компилятор сразу и с БД естественного языка и с IDE которая ведет разработку на естественном языке и с нейросетевым рантаймом в котором запускаются артефакты компиляции.
Фактически, там 2 компилятора нужно. Первый, это что-то типа intellisense который подготавливает тексты, вводимые пользователем в формат понятный IDE: раскладывает все на схемы и диаграммы.
Вобщем такой Synthantin--формализатор и Constructor-Collider--конструктор-коллайдер который реконструирует формализованное, обратно. Итак, это все первый "структурный" компилятор, который встроен в IDE и чья задача в конечном итоге сформировать некий формализованный поток диаграмм и схем. Второй компилятор -- генерирует нейросеть. нейрокомпилятор, на основе сгенеренных диаграм и схем.
Такова , если брать узко , задача. сделать два компилятора. структурный "хирургический" и потоковый нейрокомпилятор, который из кодов L4 генерит нейросеточки neuromeshlets , которые встраиваются в ячейки нейрантайма, корторый представляет собой мультилинк-гиперризому.
Тоесть фактически многобразие, которое рассматривается как расслоение карт чисел -- адресных пространств. Эти системы адресации различны и я разработал большое количество таких систем организации памяти. Вот последняя уже оперирует не 4-мя а восемью символами как два набора по четыре символа-ячейки карты чисел. Интересно, что в случае моего компьютера -- адресные пространства не статичны, а движутся, устанавливая соединения с другими адресными пространствами и нейросеточки в них могут взаимодействовать друг с другом образуя ганглии или ассембляжи/сборки.
С другой стороны сохраняется связь между этой ганглиозной нейро-субстанцией и типизированной "структурной" логикой естественного языка. Фактически то, что хотелось бы получить, это машину для производства хорошо типизированных высказываний на естествеенном языке из фактически непрерывно изменяющихся потоков сигналов внутри общей сети. Что-то вроде производства текста из блуждающих электрических токов внутри нейросети.
Ну и последнее, что я сделал -- это сопоставил коды L4 со стандартными движениями в алгоритмах сборки кубика Рубик. Конечно коды L4 тут уже не плоских графов, а стереометрические коды L4x2 по моей классификации. С другой стороны и кубик РУбика не 3х3х3, а 2х2х2. Вобщем, это можно назвать, опять же не очень точно -- кодами сборки октокуба -- т.е. куба состоящего из 8 кубиков-ячеек, описываемых двумя наборами плоских L4-кодов.
По типу ntfu -- маленькими буквами для нижнего слоя октокуба и большими NTFU -- для верхнего слоя. ntfu.NTFU (или если бустрофедоном ntfu.UFTN). Это тоже целая отдельная история.
Дело в том, что изначально идея была в том чтобы создать трехмерный код из плоского. Так как то, что лежит снизу всегда меньше того что сверху, то нижний слой маленькими буквами, а верхний -- большими. К тому же тут мы можем говорить не о слое а о стороне "карты чисел". В обычной плоской карте чисел одна сторона, а в 3Д-карте чисел их две . Та что снизу меньше, та что сверху -- больше. Вообще-это именно то что я назвал в свое время философским стеклом. После того, как мы вводим симметрии такого типа мы автоматически получаем 3Д систему отсчета, аналогичную декартовой, но только другую.
Поскольку карта чисел -- фрактал, то философское стекло (3Д карта чисел) позволяет адресовать не только точки плоскости, но и по высоте. Для этого мы просто вводим двойной набор символов ntfu--для нижнего слоя и NTFU -- для верхнего. Вложенность таких 3Д карт чисел позоляет адресовать обьем, а симметрии в нем выглядет чем-то вроде nTTfUUntt например для 9-разрядного октокуба-3Д карты чисел-философского стекла.
Отдельный вопрос состоял в том как присоединять, вернее как обходить символы в удвоенном наборе символов, при синтетическом даже порядке обхода N->T->F->U. Есть две возможности "параллельная" с переходом u->N между слоями и "последовательная" -- бустрофедоном u->U , но тогда (внешние символы) верхний слой будет иметь аналитический обход символов U->F-T->N своего шаблона кода, а сами коды примут вид:
nX_tX_fX_uX.NX_TX_FX_UX или для простоты ntfu.NTFU (параллельный подход (с разрывом)) nX_tX_fX_uX.UX_FX_TX_NX или для простоты ntfu.UFTN (последовательный подход (бустрофедоном))
вопрос причем тут "параллельный" и "последовательный" ? ответ очевиден. в параллельном подходе , символы слоев располагаются один над одним и связь перехода u-->N на верхний слой, делает очевидным двухстороннее взаимное соответствие больших и маленьких символов одного рода, причем порядок обхода символов верхнего(наружного) слоя, такой же как и нижнего(внутреннего) -- синтетический.
при последовательном подходе ntfu.UFTN, нет какого-то "разрыва"(диагонального перехода на верхний слой), символ u просто переходит в верхний наружний слой. "u" становится зеркальным "U". зато далее синтетический обход уже не может продолжится, и так как у нас их только два -- синтетический и аналитический, то верхний слой идет по аналитическому обходу. Можно сказать что большие символы -- это некая иллюзия, покрывающая ядро. |
|
|