theKernel 10.0 NHI1 - theKernel - theLink - theConfig - theSq3Lite - theCompiler - theBrain - theGuard
c - tcl - py - rb - jv - cc
Loading...
Searching...
No Matches
MK_C_API
+ Collaboration diagram for MK_C_API:

Topics

 MkKernel_C_API
 MkKernel PACKAGE - The package is the toplevel structure of the Programming-Language-Micro-Kernel (PLMK)
 
 MkRuntimeC_C_API
 MkRuntimeC - The class known as mkrt or runtime is the main ccmkkernel application environment …
 
 MkTypeC_C_API
 MkTypeS - class known as typ or type is used as class-base for a Managed-Object-Technology (MOT) type …
 
 MkObjectC_C_API
 MkObjectC - class known as obj or object is used as base-class type for a Programming-Language-Micro-Kernel (PLMK) class …
 
 MkBufferC_C_API
 MkBufferC - the abstract class known as buf or buffer is used to create and manage dynamic, generic, mixed typed data. …
 
 MkBufferStreamC_C_API
 MkBufferStreamC - the abstract class known as bus or stream is a subclass of MkBufferC and is used for package-based-io
 
 MkBufferListC_C_API
 MkBufferListC - the class known as bfl or buffer-list is used to create and manage a list of MkBufferC
 
 MkLogFileC_C_API
 MkLogFileC - the class known as lfl or log-file is used to control the target of the logging-output
 
 MkExtensionC_C_API
 MkExtensionS - the class to add an additional feature into an existinng (final) class without subclass …
 
 MkErrorC_C_API
 MkErrorC - the class known as err or error is used to create and manage an error message …
 
 MkExceptionC_C_API
 MkExceptionC - The default-exception of the Programming-Language-Micro-Kernel (PLMK)
 

Detailed Description

The LibMkKernel API …

PHILOSOPHY

theKernel is an infrastructure that link an library-item with a Target-Programming-Language (TPL) using the Programming-Language-Micro-Kernel (PLMK) object-interface. The goal is a programming language independent interface between a C library and a target language.

Philosophy
Write Once → Run Everywhere

The library-item is a c-api for a library available as c-header-file.
The library-item is mapped into a Target-Programming-Language (TPL) using a language that is supported by the Programming-Language-Micro-Kernel (PLMK).
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 library-item is connected to the Target-Programming-Language (TPL) using an api-layer generated by the token-stream-compiler of the Programming-Language-Micro-Kernel (PLMK).

Conclusion
theKernel is used to manage a collection of library-items using an API that is available in all major programming-languages.

PROGRAMMING

The Programming-Language-Micro-Kernel (PLMK) is separted into three programming-layers:

  1. The library-layer, used by the theKernel library programmer
  2. The tool-layer, used by the theCompiler tool programmer
  3. The target-layer, used by the target-language programmer
library-layer
The library-layer implement the ccmkkernel library and is responsible for the quality-target of the entire project.
  • implementation of the managed-object technology
  • establishing and managing the library-items
    • providing the startup and cleanup API
    • providing the logging, debugging and error API
    • providing the memory and garbage-collection API
  • written in plain C
tool-layer
The tool-layer creates the tools and is responsible for the integration of all components into the NHI1 framework.
  • implementation of the project and build technology.
  • implementation of the token-stream-compiler technology
  • generate the source-code for the target-layer.
  • written in plain C, TCL and the Target-Programming-Language (TPL)
target-layer
The target-layer is the API used by the target-language-programmer.
Target
!! This documentation describe the implementation-layer and target the C++ programmer. !!