Создаю SOLONCODE — свой язык программирования
Я начал разработку SOLONCODE — своего языка программирования для продуктов, которые хочу создавать дальше. Сейчас это ранний рабочий прототип v0.4.5: типизированные программы, явные разрешения, запуск через CLI и среда исполнения в браузере.

Зачем я его создаю
Мне важно явно задавать зависимости данных, разрешения и проверки в программах для собственных продуктов. В SOLONCODE я превращаю эти идеи в то, что можно запустить, изучить и улучшить.
Пример, который уже работает
Сферу Фибоначчи с миллионом возможных точек можно описать JSON-правилом размером 131 байт. Полный массив координат XYZ в Float64 занимает 24 МБ. Я храню правило и вычисляю нужную точку по запросу.
В реальном запуске программы .solon получены точка 42 и блок из восьми точек. Выборку из 4 096 точек я также сверил с отдельной реализацией на Python. Максимальное расхождение координат оказалось меньше 1e-12.
Что означают эти цифры
131 байт — размер описания правила именно этой процедурной сферы. Код, среда исполнения и готовые координаты занимают дополнительную память. Аналогичная ленивая реализация на JavaScript использует то же описание размером 131 байт.
Этот пример проверяет представление и результат вычисления. Он не доказывает общее преимущество SOLONCODE по скорости, памяти или стоимости работы AI. Это я буду оценивать на одинаковых задачах и по результатам проверок.
Следующие шаги
Дальше буду развивать язык через продукты, которые создаю. Здесь поделюсь рабочими примерами, решениями и проверками, которые показывают, что изменилось.
Вопросы
Можно уже пользоваться SOLONCODE?
В этой новости показан ранний рабочий прототип v0.4.5. Это ещё не публичный релиз и не заявление о готовности к промышленной эксплуатации.
На иллюстрации все миллион точек?
Нет. Показана выборка из 4 096 индексов. Правило задаёт миллион возможных точек, координаты которых вычисляются по запросу.
Технические источники
- Мой опубликованный анонс SOLONCODEШесть карточек с примером сферы, реальным запросом точки и границами сравнения.