The Wayback Machine - https://web.archive.org/web/20211115182306/http://github.com/linksplatform
Skip to content
@linksplatform

LinksPlatform

A cross-platform modular framework for automation of automation. Кроссплатформенный модульный фреймворк для автоматизации автоматизации.

LinksPlatform (русская версия)

The Links Platform is a cross-platform modular framework for automation of automation (each library of this framework can be used separately).

It includes:

  1. Two implementations for database engines construction based on the associative data model: Doublets and Triplets;
  2. Source code translators (for example from C# to C++);
  3. The bot.

At the moment we use Rust, C#, C++, C, JavaScript, and Python programming languages.

Documentation

introduction

Graphical introduction

Quick start example | Run .NET fiddle

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

// A doublet links store is mapped to "db.links" file:
using var links = new UnitedMemoryLinks<uint>("db.links");

// A creation of the doublet link: 
var link = links.Create();

// The link is updated to reference itself twice (as a source and a target):
link = links.Update(link, newSource: link, newTarget: link);

// Read operations:
Console.WriteLine($"The number of links in the data store is {links.Count()}.");
Console.WriteLine("Data store contents:");
var any = links.Constants.Any; // Means any link address or no restriction on link address
// Arguments of the query are interpreted as restrictions
var query = new Link<uint>(index: any, source: any, target: any);
links.Each((link) => {
    Console.WriteLine(links.Format(link));
    return links.Constants.Continue;
}, query);

// The link's content reset:
link = links.Update(link, newSource: default, newTarget: default);

// The link deletion:
links.Delete(link);

SQLite vs Doublets

Image with result of performance comparison between SQLite and Doublets.

Description

Inspired by the work of Simon Williams (The Associative Model of Data), book, whitepaper.

Comparison of models:

Comparison of models

Comparison of theories:

Comparison of theories

This platform uses a unified data type — link, which is a combination of Item and Link from a work by Simon Williams. So the Item or Point is a specific case of the link, which references itself.

There are two variants of Link structure:

Source-Target link, untyped Source-Target link, untyped
Source-Linker-Target link, typed Source-Linker-Target link, typed

Links Platform planned as a system, that combines simple associative memory storage (Links) and transformation execution engine (Triggers). There will be an ability to program that system dynamically, due to the fact that all algorithms will be treated as data inside the storage. Such algorithms can also change themselves in real-time based on input from the environment. The Links Platform is a method of modeling the high-level associative memory effects of human mind.

We strive to make our implementation of associative storage the most accurate, simple, universal, flexible, reliable and fast memory implementation for any data and knowledge.

One of the most important goals of the project is to accelerate the development of automation to the level when automation can be itself automated. In other words, this project should help to implement) a bot-programmer which will be able to create programs based on descriptions in human language.

Road map

Road Map, Status

Project status

Frequently asked questions

Support

Ask questions at stackoverflow.com/tags/links-platform (or with tag links-platform) to get our free support.

You can also get real-time support on our official Discord server.

Contacts

vk.com/linksplatform

vk.com/konard

Pinned Loading

  1. Documentation and support root repository for all LinksPlatform projects

    3 3

  2. LinksPlatform's Platform.Data.Doublets Class Library

    C# 11 3

  3. LinksPlatform's Platform.Data.Triplets Class Library

    C# 7 1

  4. LinksPlatform's Platform.RegularExpressions.Transformer.CSharpToCpp Class Library

    C# 10 1

  5. A way to describe data using references and links.

    C# 1

  6. Bot Public

    A VK bot for programmers by programmers. Supports karma. Stores list of programming languages, and a link to GitHub for each programmer in the chat. This repository also contains a GitHub bot proto…

    C# 11 18

Repositories