Skip to content

Latest commit

 

History

History
111 lines (67 loc) · 11.7 KB

README.ru.md

File metadata and controls

111 lines (67 loc) · 11.7 KB

Статус сборки

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

Платформа Связей — это модульный фреймворк, в который входят две реализации СУБД на основе ассоциативной модели данных: Дуплеты и Триплеты; а также трансляторы (например из C# в C++) и бот.

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

В данный момент мы используем следующие языки программирования: C#, C++, C, JavaScript and 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 (Глагол, Тип, Связка, Предикат, Сказуемое), так, что теперь любая дополнительная информация о типе соединения между двумя связями может быть записана в это дополнительное поле.

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

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

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

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

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

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

Концепт Swagger Connector

Links (doublets) API swagger connector.

Links (triplets, micro RDF) API swagger connector.

Support

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

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

Контакты

https://vk.com/linksplatform

https://vk.com/konard