Interfacing Erlang with the Outer World
Native Libraries
There are plenty of different approaches on integrating NIFs written in other languages:
C Language
dryverl (license BSD)
C/C++ Generic Erlang Port Driver (license MIT)
C++
EPI (license LGPL)
eixx (license Apache2)
C/C++ Generic Erlang Port Driver (license MIT)
C++11 NIFPP (license Boost)
Lua
erlua
erlualib (license MIT)
Python
Ruby
ErlPort (see below in "Ports")
PHP
Erlang Term Format (PHP) (MIT)
Rust
Rustler (license Apache, MIT)
Nim
nimler (MIT)
Javascript
Perl
Ports and Network
For the situations when you still need the speed and can tolerate some call latency over, but don't want to risk crashing your node: choose interaction over network or a port.
CloudI, A private cloud engine (C/C++, Erlang/Elixir, Java, JavaScript/node.js, Perl, PHP, Python and Ruby)
Last modified: 10 June 2024