Skip to content

Latest commit

 

History

History
122 lines (76 loc) · 13.1 KB

README.ru.md

File metadata and controls

122 lines (76 loc) · 13.1 KB

ПлатформаСвязей (english version)

Платформа Связей — это кроссплатформенный модульный фреймворк для автоматизации автоматизации (каждая библиотека этого фреймворка может использоваться отдельно).

Он содержит:

  1. Две реализации для сборки движков СУБД на основе ассоциативной модели данных: Дуплеты и Триплеты;
  2. Трансляторы исходного кода (например из C# в C++);
  3. Бота.

В данный момент мы используем следующие языки программирования: Rust, C#, C++, C, JavaScript и Python.

Документация

вступление

Графическое вступление

using System;
using Platform.Data;
using Platform.Data.Doublets;
using Platform.Data.Doublets.Memory.United.Generic;

// Хранилище дуплетов привязывается к файлу "db.links":
using var links = new UnitedMemoryLinks<uint>("db.links");

// Создание связи-дуплета: 
var link = links.Create();

// Связь обновляется чтобы ссылаться на себя дважды (в качестве начала и конца):
link = links.Update(link, newSource: link, newTarget: link);

// Операции чтения:
Console.WriteLine($"Количество связей в хранилище данных: {links.Count()}.");
Console.WriteLine("Содержимое хранилища данных:");
var any = links.Constants.Any; // Означает любой адрес связи или отсутствие ограничения на адрес связи
// Аргументы запроса интерпретируются в качестве органичений
var query = new Link<uint>(index: any, source: any, target: any);
links.Each((link) => {
    Console.WriteLine(links.Format(link));
    return links.Constants.Continue;
}, query);

// Сброс содержимого связи:
link = links.Update(link, newSource: default, newTarget: default);

// Удаление связи:
links.Delete(link);

Изображение с результатом сравнения производительности SQLite и Дуплетов.

Описание

Вдохновлено работой Симона Вильямса (Ассоциативная модель данных - англ.), книга (англ.), сравнение с реляционными моделями данных (англ.).

Сравнение моделей данных:

Сравнение моделей данных

Сравнение теорий:

Сравнение теорий

Эта платформа использует объединённый тип данных — связь, который является комбинацией Элемента и Связи из оригинальной работы Симона Вильямса. Таким образом Элемент или Точка являются частным случаем связи, которая ссылается сама на себя.

Есть два варианта структуры Связи:

  • Нетипизированная, каждая связь содержит Source (Начало, Подлежащее) и Target (Конец, Сказуемое, Дополнение):
Связь Начало-Конец, нетипизированная Связь Начало-Конец, нетипизированная
  • Типизированная, с добавленным Linker (Глагол, Тип, Связка, Предикат, Сказуемое), так, что теперь любая дополнительная информация о типе соединения между двумя связями может быть записана в это дополнительное поле:
Связь Начало-Связка-Конец, типизированная Связь Начало-Связка-Конец, типизированная

Платформа Связей запланирована как система, которая комбинирует хранилище ассоциативной памяти (Связи) и движок выполнения трансформаций (Триггеры). Эту систему можно будет программировать динамически, благодаря тому факту, что все алгоритмы будут восприниматься как данные внутри этого хранилища. Такие алгоритмы также способны изменять сами себя в режиме реального времени на основе входных данных из окружающей среды. Платформа Связей это один из способов моделирования высокоуровневых эффектов ассоциативной памяти человеческого разума.

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

Одна из важнейших целей проекта — ускорить развитие автоматизации до того уровня, чтобы можно было автоматизировать саму автоматизацию. Другими словами, этот проект должен позволить реализовать бота-программиста, который смог бы создавать и редактировать программы на основе описания на человеческом языке.

Дорожная карта

Технологическая Дорожная Карта, Состояние, Прогресс

Текущее состояние разработки (англ.)

Мастер план

  1. Реализовать лучшую возможную реализацию базы данных в мире.
  2. Использовать её, чтобы разработать расширяемые трансляторы (исходный код в исходный код) для популярных языков программирования.
  3. Использовать базу данных и трансляторы для того чтобы реализовать GitHub бота, который мог бы выполнять любые задачи, на которые способен средний программист.
  4. Автоматизировать автоматизацию полностью.

Концепт Swagger Connector

Links (doublets) API swagger connector.

Links (triplets, micro RDF) API swagger connector.

Поддержка

Задавайте вопросы по адресу stackoverflow.com/tags/links-platform (или с тегом links-platform) чтобы получить нашу бесплатную поддержку.

Вы так же можете получить поддержку в режиме реального времени на нашем официальном Discord сервере.

Контакты

discord.gg/eEXJyjWv5e (наш официальный Discord сервер).

https://vk.com/linksplatform

https://vk.com/konard