我正在从事 Erlang 机器人项目。我做了一个wallfollower机器人程序,它有两个文件1.一个与硬件通信的C程序(我认为我们不能直接使用Erlang)和2.调用这些函数的Erlang程序。我想知道我可以在哪里(平台)运行这个机器人。
是否可以在基于微控制器(8051 或 ARM7)的硬件上运行这个机器人?
是否可以将 Erlang 程序转换为 C 代码或直接转换为 .hex 文件?
你可能想看看这个项目:
他们今天在伦敦的 Erlang 工厂会议上介绍了它。
此外,您可能想联系来自意大利卡塔尼亚的 DMI(以前称为 DIIT)的人员。他们花了很多年时间研究 Erlang 驱动的机器人:
http://eurobot.dmi.unict.it/?p=16
希望这可以帮助。
尽我所知:
在微控制器上没有任何 Erlang VM 端口(假设它甚至有意义)
没有任何方法可以将 Erlang BEAM 代码转换为 .hex 格式:BEAM VM 代码需要虚拟机才能运行。
如果您想要具有任务/线程功能的轻量级微控制器,为什么不考虑 TinyOS 呢?
Erlang VM 不仅仅为您解释 erlang 字节码。它还处理进程间消息传递,并完成了许多使 erlang 如此健壮和容错的繁重工作。将 erlang 代码翻译成机器代码也需要翻译大部分 vm 代码。您最好将 vm 本身移植到微控制器并在其上运行应用程序。