A C-language library especially for embedded applications which offers Java-similar routines. It contains common C-base algorithms and a Definition of an OSAL-Interface (Operation System Adaption Layer). The OSAL is implemented for Windows and Linux. The usability of the OSAL is tested on some embedded platforms (not Part of Open-Source).
* for all multithreading requirements (class java.lang.Thread, methods synchronized for Objects etc)
* for all Input/Output requirements (java.io)
* for Container, especially lock-free with atomicAccess (ConcurrentLink
* etc. etc.
The feeling for that concepts and using as interface for C-language seems a stable concept for basic-functions in C rather than the old-style basic functions like fprintf etc and rather than direct usage of the special offers of the underlying operation system. The last one prevents testing on PC or needs a special adaption and blocks re-using.
A next goal was the establishment of a Java2C-translator, which allows to write and test algorithm in Java and then translate to C-language. The CRuntimeJavalik
Some more complex functionality of the CRuntimeJavalike is programmed in Java and translated to C. The pure C-Source-code should be able to use and understand well. But it should not be improved in C.
C++-usage: All functionality is provided in C. But there are wrappers for C++ to get a better calling style. The usage of C++ for embedded applications is recommended by me, if a subset is used. The whole slang of C++ may not so proper in my mind: C is more closed to machine code, it is known whats happen.