Awesome Open Source
Awesome Open Source

Pyrlang - Erlang node in Python

This is a drop-in Erlang node implementation in Python 3, implementing a network Erlang node protocol. It was designed to allow interoperation between existing Python projects and BEAM languages: Erlang, Elixir, Alpaca, Luaerl, LFE, Clojerl and such.

With just a few lines of startup code your Python program becomes an Erlang network node, participating in the Erlang cluster.

Documentation

Browse at https://pyrlang.github.io/Pyrlang/

Or build your own by running make docs (generated by Sphinx).

Support & Questions

For those times when you absolutely need assistance and email is too slow, here's a Discord channel: https://discord.gg/pWWe7Wx and there is a Slack channel #pyrlang on https://erlanger.slack.com/

Features

  • Erlang distribution protocol for Erlang versions 21, 22 and 23
  • Registry of Python 'processes', which have an Erlang-compatible process identifier and an optional registered name
  • Send and receive messages locally and remotely by pid or name
  • Can link and monitor Erlang from Python and Python from Erlang
  • net_adm pings supported
  • RPC calls to Python (Erlang rpc:call). Exceptions are propagated from Python back to Erlang;
  • pyrlang.gen.server.GenServer descendant from pyrlang.process.Process allows accepting generic calls mapped to Python class members
Related Awesome Lists
Top Programming Languages
Top Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Python (822,998
Erlang (9,064
Rpc (8,169
Asyncio (2,587
Gevent (749
Message Passing (263
Erlang Node (6