вторник, 21 января 2025 г.

PicoLisp + Tiddlywiki

Идея интеграции этих систем захватила полностью. Почти понятно, что делать с сервером приложений и есть отличный прототип для этого. А вот что делать с тольстым клиентом в браузере пока не ясно. Есть тенденция отказываться от поддержки плагнов в браузерах и разработчики поддталкивают к компиляции систем в Webassembly.

Пытался активно "серфить" тему в сети с помощью интеллектуальных ботов. Все смещают акценты в этом направлении. Посмотрел более внимательно, что там на текущий момент с WASM и WASI и на фоне знакомства с PicoLisp вдруг осознал как близки эти технологии друг другу сами по себе. В нектором смысле, реализация интерпетатора PicoLisp так и напрашивается в контейнере Webassembly. Ограничения по память в четыре гигабайта не препятствие. Кто сказал, что в случае развития здесь не сработают технологии распределительных систем.

Короче, инициировал отдельный тиддливики файл для изучения WASM. Насколько авантюрная идея? Пока сам до конца не осознаю что и как. Но интуиция подсказывает, что направление перспективное, а интуиция пока никогда не подводила! Есть ощущение, что это не под силу одному пенсионеру, который последний раз сам кодил почти полвека назад. Но есть "дорога" ... "без начала и конца ..." ... И это будет либо шаг в сторону персонального интеллектуального агента или контентной обучающей базы, либо просто фокус для интеллектуальной игры ... хотя бы на уровне создания теории и спецификаций. И на этом пути можно свободно рассматраивать свои форматы и протоколы, а по пути окончательно закрыть тему "динамические списки над регулярными массивами".

вторник, 14 января 2025 г.

Идеальная синтаксическая система

У меня нет комплеков в части понимания процесса программирования. Да, я не знаком в деталях с архитектурами интегральных схем, но я понимаю принципы абстрагирования и чувствую пределы, необходимые для концептуализации этих процессов, программирования и абстрагирования. У меня есть практика созлания больших производственных систем, включая академические. Я прочитал тучу книг, почти все классические и авторов, выпадающих из конвенционального мейнстрима. Я работал рядом с гениальными программистами, был постановщиком задач, участвовал в разрабтке различных архитектур и интерфейсов. И к чему об этом я заговорил? Я сторонник кнутовского представления о развитии многоуровневых систем. Когда мне говорят, что для каждой задачи свой язык - то это меня натораживает и вызывает подозрение к авторам подобных утверждений. Да, я за специфику предметных диалектов ... да, любой метауровень требует своих обозначений новых категорий и абстракций ... но ... если мы утверждаем, что все "тьюринг полные языки" изоморфны и все расширяемы ... то значит есть оптимальные решения, есть идеальные системы, хотя бы те, которые нацелены на создание синтаксисов, но одной "неизменяемой архитектуре". Наш мозг, например, имеет персистентную природу, в чем, кстати, его основная сила. Он помнит не только все свои достижения, но и ошибки.

И что ... я уверен в конструктиве идеи интеграции ASON формата с PicoLisp архитектурой и Tiddlywiki интерфейсом. Как уверен в том, что это направление определяет развитие программирования на десятилетия. Ни много, ни мало ... Включая задачи, связанные с разитием искусственного интеллекта ... и даже, так называемых смартконтрактов. И я буду это доказывать.


вторник, 7 января 2025 г.

PicoLisp и другие

Все идет по плану. В новом блоге на хешборде новые посты и в еженедельном режиме. Инициировал первую страницу на PicoLispWiki и параллельно растет число тиддлеров для конспектирования результатов исследования PicoLisp в Tiddlywiki

Пожалуй найден ответ на вопрос, с какого языка программирования надо начинать обучение. Какой язык программирования должен или может быть первым? Первая система, для которой так подробно описана её архитектура и прочие потрохи, не считая, конечно, двух моих предыдущих симпатий. Начиная с критики "функциональной пара-дигмы" (точнее её интерпретации), в конце концов, я пришёл в мир "Лиспа", но в его традиционном варианте, развивающим базовые принципы символических вычислительных процессов.

Теперь можно все остальное "вычищать" из ментальной памяти, что окажется важным, должно быть связано и так или иначе проявится в процессе погружения. Есть ещё только два аспекта, которые, видимо будут постоянно присутствовать рядом пока не найдется решения, ассимилирующего все три проекта. Tiddlywiki в части архитектуры интерфейса и синтаксис ASON Format-а, включая развитие проектов, продолжающие концепции Rebol типа Spry, Arturo, Ryelang и так далее. Последние могут быть источником новых идей и оптимизации философии компьютерных интерфейсов, включая такие концепции как персистентность (историческое моделирование, Фантом ОС, UNISON), которые лежат как принципы в основе ИИ, расширяя и ту же базовую идею неизменяемости в "функциональном программировании". Теория категорий или алгебраические типы данных - все это символизация, нейминг, теория определений или отношений, структуры, в основе которых "точечные пары" и новая теория должна конструироваться вокруг этой самой символизации и интерпретации, с минимум синтаксического сахара типа "истинности", "теории типов" и тривиальных "черных ящиков" ... "лямбда-исчисления". Организация памяти и её распределение, решаются в пользу связного списка над регулярным массивом, в пользу ассоциативного массива, в котором кодируются любые другие табличные структуры.

суббота, 28 декабря 2024 г.

Итоги и планы 2024 - 2025

Обычно к концу года я занимаюсь стратегическим планированием на следующий год, а в последнем посте года публикую просто список всех постов за год. Сейчас думаю, что достаточно привести на них ссылку. Какие итоги? Я нашёл базовую платформу - это PicoLisp! Оформилась структура для развития дисциплины МЕТАМОДЕЛИРОВАНИЯ. Я, наконец, закончил со словарем для лексики ГЛОТЕОНА. Ну и продолжаю "чистку" накопленных ресурсов, многие из которых, видимо, так и не прочитаю внимательно, хотя почти все, что пытался сохранить, все-таки, мимоходом пробегал глазами. Но 20 Гб архива - это неподъемно для меня. Кое-что забывается и надо начинать все сначала, систематизировать и оптимизировать. Вот систематизацией и оптимизацией документации PicoLisp я и займусь, параллельно, конечно, пытаясь на нем что-то делать. Сам собой возник проект тиддливики, её полная архитектура и интерфейс с заменой JS на PicoLisp. Сомневаюсь, что такое подъемно для меня одного, но может кто и поможет. Но идея снаружи и от неё выиграют оба проекта. Не удержался и зарегился на хешборде, сильно понравилось. Буду там вести журнал и в документе пытаться формулировать связный текст по метамоделированию и САР-грамматике ... Возможно, в отличие от этого блога, в ежедневном режиме, попробую, как получиться, а здесь подитоживать еженедельно, как обычно. Теперь, когда меня спрашмвают, чем я занимаюсь, то я бодро отвечаю - персональной базой знаний и генеративным интеллектом!

суббота, 21 декабря 2024 г.

PicoLisp и Chrome OS Flex

Поставил Chrome OS Flex и этот пост уже под ним. Но причина была не только в том, что последний апгрейд Win 11 24 H ломает интернет, но и в том, что стал замечать, что у некоторых рахработчиков стали явно проявляться предпочтенияи не в пользу Майкрософт. В частности, это можно увидеть по проекту PicoLisp. И, кстати, попадались ещё ряд проектов, которые имеют место под маркой "ГНУсного фонда" и игнорирующие МС. Ну что ж, когда-то я защищал первые Винды против Юникса и не предполагал, что Линукс получит такую мощную поддержку, но когда появились сервисы Google, то на Google site, ещё старой версии, вел сайт, посвященный гуглемании, их цели под знаменем Интернета казадись и кажутся самыми разумными. Потом энтузиазм поутих, когда они метались с глобальной базой знаний и особенно когда закрыли G+. Но как-то само собой получается, что отказаться от Google не получается и при всех минусах это не то что "наименьшее зло", но фирма, ещё способная на инновации, и не меньше, чем то же "Яблоко". Эпоха доминирования IBM и AT&T сменилась доминированием МС, Яблока и Гугл ... Специализации на ПО типа Оракла, купившего Sun, якобы "фонда свободного ПО" и даже попыток Амазона, без своего железа не выиграют конкуренцию, не случайно у последнего хотя бы есть своя электронная книжка, а те же HP или Xerox не бросают свои принтеры. Все-таки, сначала железо ... а потом сеть (фермы железа, что та же сеть, как впрочем даже один комп) ... а софт как интерфейс с этим будет развиваться сам собой и оптимизироваться. И дело не в том, какие у тебя программеры, а как ты реагируешь на внешние изменения и пользователя ... Пусть МС надеется на "умные очки" ... "Яблоко" на "умные часы" ... но "два раза в одну и ту же реку не войти" ... Персональный компьютер должен быть в сети и здесь пока флагманом ясно кто. Смотрите на японцев и корейцев, они как барометр ИТ-фронта с их Curl-яндиями и прочими культами ... Так что, я осознанно становлюсь "гражданином Гугляндии", в частности, с их Golang. Не обязательно должно нравиться все в стране, где ты проживаешь, но в целом, долна быть своя предпочтительная инфраструктура. Ну а туристом, можно наезжать куда угодно ... 

PicoLisp мне подсказал кто-то из новых поисковиков на базе нейросеток, чуть ли не ЖПТ ... и подсказал в свете аналогии Rebol  ... Ну да в сысле того, что не все выражения дожны вычисляться, они идейные аналоги ... Так что к проектам Spry, Arturo, Ryelang, Red, Boron, акцентирующие Rebol - синтаксис и его базовые идеи, прибавляется PicoLisp ... с его утверждением автора по поводу инетпретатора, который типа написан на нем самом ... Про компиляторы мы такое слышали, а вот про интерпретаторы ещё нет. Буду разбираться в деталях.

суббота, 14 декабря 2024 г.

Ring

Мы можем думать о языке программирования как о пользовательском интерфейсе между пользователем и машиной. Пользователь может быть программистом, имеющим глубокие познания в архитектуре машины, разработчиком, интересующимся приложением и требованиями своих пользователей, или ребенком, желающим открыть для себя программирование. Кроме того, у нас есть много других типов пользователей, таких как исследователи, люди с глубокими познаниями в определенных областях и так далее. Предоставление языка программирования, который использует только определенный синтаксис, не соответствует тому, что мы узнали о пользовательских интерфейсах. Ring — это язык, разработанный для перевода и настройки на уровне синтаксиса языка. Речь идет не о предоставлении нескольких версий программного обеспечения, где каждая версия использует другой человеческий язык. Речь идет о возможности изменять синтаксис на уровне проекта, где, используя одну версию Ring, мы можем переключаться между разными человеческими языками и разной настройкой синтаксиса. Вместо разработки разных языков программирования, которые используют одну и ту же виртуальную машину, Ring использует один компилятор, который поддерживает изменение синтаксиса, и это можно делать много раз в одном проекте.

 https://ring-lang.github.io/doc1.22/introduction.html


Это подкупило. Начал смотреть. Пока все нравится, включая попытки конструирования системы программирования "без кодирования" (конечно, это не возможно ... но речь о "визуальном программировании" и термин "без кода" неудачный) ... И это заставляет пока не торопиться с выбором хоста ... Тем более, что тут намедни загрузка последней версии виндов снесла интернет ... обновил все драйвера на компе, но не помогло и пришлось откатиться ... кто-то в сети рассказывает как колдует в этой ситуации ... но при чем здесь танцы с бубнами в виндах ... только вдумайтесь, как называется эта ОС! ... Пр этом видит соседские сети, а родную игнорирует ... Есть гипотеза, что из-за политик безопасности (как они меня достали  с безопасностью!), но я думаю, что из-за кривых рук программистов микрософт, которые не дружат с логикой ... Короче, есть ещё над чем подумать и, в частности о потенциальном переходе на что-то unix-подобное ... Может это заставит посмотреть там на разные инициативы GNU, включая саму оболочку ... Тем более, что ещё не сложилось окончательного мнения анализа языков запросов и той же разметки ... Опять же с пи-исчислением и какая здесь связь с той лямбдой, которую, с моей точки зрения нельзя интерпретировать как анонимную функцию, то есть черным ящиком ... это просто метафора, работающая не всегда и точно затеняет идею базовой абстрактной операции, из которой конструируются все остальное, по пути решая и каррирование или проблему арности ... Одним словом я тороплюсь с выбором хоста и пока не сформировалось окончательное видение того, что, в конечном счете, требуется, кроме нескольких общих принципов типа базы кода на основе ассоциативного массива или двудольного графаф, персистентности, транзитных протоколов, векторного интерфейса (включая холст) ... и тому подобного ... Да, акцент в персональную систему знаний ... но, опять же, с возможностью связи с глобальным окружением ... то есть "клиент-сервреной персоны". Так что, скорее всего, что следующмй год - это проблема систематизации выделенных идей в инересных и актуальных проектах и, наконец, спецификация с позиции единого интерфейса ... например, как в том же Ring (тихо, без шума, идущий своей дорогой как, например, тот же Curl).

суббота, 7 декабря 2024 г.

Pony

Pony предотвращает гонки данных. Он не может помешать вам писать условия гонки в вашей программе. Чтобы узнать больше о различиях между условиями гонки и гонками данных, ознакомьтесь с книгой «Условие гонки против гонки данных» Джона Регера.

В связи с Ryelang теперь вместо Rust видится golang, а архитектура tiddlywiki продолжает не давать покоя ... Такой кентавр можно оптимизировать и что-то может ещё привнести типа персистентности и контентной адресации, но в целом хочется систему мета моделирования конструировать на базе этих уже существующих артефактов. Из моего Telegram ...

То есть, казалось бы, выбор сделан и уже можно обойтись без чтения подобных комментариев ... Но очень трудно избавиться от искушения посмотреть очередной новый проект ... или просто проект, о котором ещё ничего не знаешь или просто забыл, что уже встречал, но не посмотрел и прошёл мимо, занятый другими вещами ... Reason (Ocaml), Vale, Inko, Hare ... Но уже не столько интересуют, собственно, концепции, сколько их формулировки ... И в этом смысле, именно, Ponylang, точнее его документация или спецификацция показалась содержательной, но даже не столько со стороны описания трюков распределения памяти, сколько отношению к концепции ТИПОВ ДАННЫХ ...

P.S. А, вообще, пора уже, хотя бы для себя продемонстрировать связь между ТИПАМИ и ИНТЕРПРЕТАТОРАМИ * ... И, опять же в рамках модели акторов, кстати, что и заставило внимательнее начать вчитываться в описание проекта Pony.

 ... А ещё на неделе подумалось о связи скобок и сложных препозиций ... как продолжение осознания того, что, то же ЕСЛИ ... ТО ... Это просто имппликация, которая описывается той же обычной стрелкой ... И, видимо это и есть та самая реальная база всего, та самая модель, синхроно возникающая при выделении любого объекта ... вместе с его связью ... хоть с чем ... например, с клозурой ... Без сопряжения мы просто ничего не сможем сделать ... Отсюда же становится понятным провал логических ЛОГЛАНА и ЛОЖБАНА с их "функциональным скобочным синтаксисом" вместо аппликативной природы той же ЛОГИКИ ... Если нам нужна арность, то тогда и нужны скобки ...