views:

153

answers:

3

I am working on Erlang robotic project. I have made a wallfollower robot program which has two files 1. a C program to communicate with hardware(I think we can not directly use Erlang for this) and 2. Erlang program to call these functions. I want to know where(platforms) I can run this robot.

Is it possible to run this robot over micro-controller(8051 or ARM7) based hardware?

Is it possible to convert Erlang program into C code or directly into .hex file?

If any one have any idea please help asap.

Thanks.

+2  A: 

To the best of my knowledge:

  1. there isn't any port of Erlang VM over micro-controllers (assuming it would even make sense)

  2. there isn't any way to turn Erlang BEAM code to .hex format: BEAM VM code needs a virtual machine to operate in.

If you want something lightweight with task/threading capability for micro-controllers, why not consider TinyOS ?

jldupont
+4  A: 

You might want to have a look to this project:

http://erlang-embedded.com/

They presented it today at the Erlang Factory Conference in London.

Also, you might want to contact someone from the DMI (formerly DIIT) from Catania, Italy. They spent many years working on Erlang powered robots:

http://eurobot.dmi.unict.it/?p=16

Hope this helps.

Roberto Aloi
A: 

The Erlang VM does a lot more than just interpret the erlang bytecode for you. It also handles the interprocess messaging, and does a lot of the heavy lifting that makes erlang so robust and fault tolerant. translating erlang code to machine code would require translating a good portion of the vm code as well. You'd be better off porting the vm itself to a micro-controller and running the apps on that.

Jeremy Wall