theLink 10.0 NHI1 - theKernel - theLink - theConfig - theSq3Lite - theCompiler - theBrain - theGuard
c - tcl - py - rb - jv - cc
Loading...
Searching...
No Matches
Overview

theLink



UPDATE changes since 26 sep 2024 : 215 files changed, 16922 insertions, 12042 deletions


SUMMARY theLink - A library to connect things, run a server and integrate an application
NEWS FROM: 30 oct, 2024

The main focus was Ruby integration into NHI10 .

NEW features
For Python and Ruby the binding of META to SELF has been revised and changed to MkRefDecrWithUnlinkSelf.


DETAILS

The theLink project is an infrastructure that allows multiple package-items to be linked together to act as one application.
To link, you need to distribute the work from one package-item to another package-item and wait for an answer or not.

Philosophy
Write Once → Run Everywhere

The package-item can be a thread, a separate local process that is started by fork or spawn, or even a network of multiple services on multiple hosts.

The package-item can be written in any language that is supported by the Programming-Language-Micro-Kernel (PLMK) support.
It even supports running multiple programming languages in a single piece of software.
Supported Languages are: (C,C++,C#,VB.NET,Java,Python,Ruby,Perl,PHP,Tcl or GO)

Strategy
It takes 4 years to write a programming-language, but it only takes 4 weeks to insert a micro-kernel.

The package-item is connected to one another via a pipe or a socket and is based on packages which are sent from one package-item to another package-item and back.

Conclusion
theLink is used to manage a network of multiple package-items using an API that is available in all major programming-languages.

DEPENDENCIES theKernel, theCompiler, https://www.sqlite.org/index.html

Summary

target #1 #2 #3 #4 #5
mqmsgque Features Filter . . .
mqmsgque INTRODUCTION CONFIG OPTIONS CLASS .
mqmsgque HIGH LINK SERVICE SEND READ
mqmsgque ROUTE PROXY SLAVE STORAGE CALLENV

Language Documentation

language C C++ C# VB.Net java Go python ruby tcl perl php
Tutorial YES YES YES YES YES YES YES YES YES YES YES

Misc Documentation

misc 1 2 3 4 5
howtos HOWTO LibMsgque HOWTO Filter HOWTO Tests HOWTO Faqs HOWTO Performance

Example code - client and server

documentation C C++ C# VB.NET java Go python ruby tcl perl php
example HOWTO work on and with a context
context C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
example simple Client/Server to multiplicate two double values
server C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
client C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
example advanced Client/Server using external/internal service, instance-attribute and high-api
server C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
client C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
example Filter to add a "<>" around every column
filter C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
example Documentation of the MyRouter tool used for route2.test
server C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
example Documentation of the Filter6 tool used for trans2.test
filter C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
example Documentation of the Identification-Test tool used for example.test
client C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
server C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
example Documentation of the perfserver tool used for example.test
server C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
example Documentation of the MyTransaction tool used for example.test
client C C++ C# VB.Net Java Go Python Ruby Tcl Perl PHP
example mpgrep a massive parallel grep tool to search for strings in very large blobs
tool no C++ no no no no no no tcl no no

Files

README , INSTALL , NEWS, CHANGES