3 ms·
I encountered this library while trying to embed node.js in a C program, but this is useful in all kind of contexts. As mentioned in the README: - Interconnect
by pcr910303 7y ago
I encountered this library while trying to embed node.js in a C program, but this is useful in all kind of contexts. As mentioned in the README:
- Interconnect different technologies in the same project. It allows to have heterogeneous teams of developers working over same project in an isolated way and using different programming languages at the same time.
- Embedding programming languages to existing softwares. Game Engines, 3D Editors like [Blender](https://www.blender.org/ https://www.blender.org/), among others can take benefit of METACALL and extend the core functionality with higher level programming languages (aka scripting).
- Function as a Service. METACALL can be used to implement efficient FaaS architectures. We are using it to implement our own FaaS (Function as a Service) [https://metacall.io](https://metacall.io/)** https://metacall.io](https://metacall.io/)** based on [Function Mesh](https://medium.com/@metacall/function-mesh-architecture-c0304ba4bad0)** https://medium.com/@metacall/function-mesh-architecture-c030... pattern and high performance function scalability thanks to this library.
- Source code migrations. METACALL can wrap large and legacy code-bases, and provide an agnostic way to work with the codebase into a new programming language. Eventually the code can be migrated by parts, without need of creating a new project or stopping the production environment. Incremental changes can be done, solving the migration easily and with less time and effort.
- Porting low level libraries to high level languages transparently. With METACALL you can get rid of extension APIs like Python C API or NodeJS N-API. You can call directly low level libraries from your high level languages without making a wrapper in C or C++ for it.
This is amazing.