Erlang与Python的最佳集成方式

26 投票
2 回答
8965 浏览
提问于 2025-04-16 05:52

怎样才能最好地把Erlang和Python结合起来呢?

我们需要在Erlang中调用Python的函数,同时也希望在Python中调用Erlang的函数。目前,我们正在尝试用SOAP作为这两种语言之间的中间层,但遇到了很多“兼容性不好的”麻烦。你能给我们一些建议,告诉我们怎样才能更好地进行整合吗?

2 个回答

11

根据我的经验,最好的选择是 erlport

这个工具可以让你在Python中创建一个Erlang端口,前提是要遵循Erlang的端口协议。它解决了数据兼容性的问题,因为它实现了Erlang的外部数据格式。你可以在链接的页面上看到一个清晰的使用示例。

26

正如之前提到的,使用erlport,你可以在Erlang这边使用Erlang端口协议,以及term_to_binarybinary_to_term这两个函数。在Python这边,有一个低级的端口驱动Port,可以用来发送和接收来自Erlang的消息,还有一个更高级的协议处理器Protocol,它简化了从Erlang调用Python函数的过程。目前在Erlang这边还没有其他辅助接口,但未来可能会有。在examples目录中,你可以找到一些不同场景的示例代码。

如果你有任何关于ErlPort的问题,随时可以联系我。

撰写回答