Update of "Application Example: Silktorrent Package Manager"
Not logged in
Overview

Artifact ID: d9f8ea3e744586c4f49d5f425d7f698746dfe737
Page Name:Application Example: Silktorrent Package Manager
Date: 2016-07-13 17:55:58
Original User: martin_vahi
Parent: f888702c439ac522dab6304bfd9bfb7c6e12cf65
Content

The Core Idea

If the silktorrent packet is a tar-file that contains folders 

payload

header

then the content of the folders payload and header can be referenced by using the tree encoding:

<tar-file name>/payload/<the file or folder relative to the folder payload>

<tar-file name>/header/<the file or folder relative to the folder header>

The <tar-file name> can be also a name of a local folder or some folder at some publicly hosted web page. The include/require/src/uses statements of various programming languages and configurations files, including HTML, can be modified by changing the pfefix of the <tar-file name>. That allows an HTML-page to be switched from using JavaScript libraries from one site to using the very same JavaScript libraries from another site.

http://www.first_site.com/<tar-file name>/payload/the_JavaScript_library.js

http://www.second_site.com/<tar-file name>/payload/the_JavaScript_library.js

Due to the possibility to use regular expressions, that solution does not require code generation. It might be even usable with many existing IDE-s without requiring any additional tools. The solution is also programming language agnostic.


Theory

The Core Idea has an assumption that backwards compatibility of libraries does not exist, even if advertised. Whenever a software component dependency is declared by stating that the version of the dependency is "newest" or "greater than X", a flaw is introduced. That is the reason, why Linux/BSD/etc. package collections are "unstable" and NEVER WILL BE "stable". For built/compiled software components each combination of build parameters, compiler, environment set-up is actually a separate version of the software component