metacall / core

MetaCall: The ultimate polyglot programming experience.
https://metacall.io
Apache License 2.0
1.58k stars 163 forks source link
c cpp docker faas ffi function-mesh golang gsoc inter-language javascript metacall node nodejs polyglot polyglot-programming programming-language python ruby
METACALL

MetaCall Polyglot Runtime

MetaCall.io | Install | Docs

MetaCall allows calling functions, methods or procedures between multiple programming languages.

sum.py

def sum(a, b):
  return a + b

main.js

const { sum } = require('./sum.py');

sum(3, 4); // 7

shell

metacall main.js

MetaCall is an extensible, embeddable, and interoperable cross-platform polyglot runtime. It supports NodeJS, Vanilla JavaScript, TypeScript, Python, Ruby, C#, Java, WASM, Go, C, C++, Rust, D, Cobol and more.

Install

The easiest way to install MetaCall is the following:

curl -sL https://raw.githubusercontent.com/metacall/install/master/install.sh | sh

For more information about other install methodologies and platforms or Docker, check the install documentation.

Examples

You can find a complete list of examples in the documentation. If you are interested in submitting new examples, please contact us in our chats.