In the previous article
we have covered the basics of working with multiple processes.
In order to make it properly work we need to implement several things.
We need recursively listen to messages, we need to handle timeouts and send messages.
That looks like a lot of stuff which can lead to mistakes. To prevent that, Elixir provides us nice wrappers around processes such as Agents and Tasks.
Agents allow us to keep a state and Tasks help us to run processes in parallel.
This time we will go deeper and get familiar with the concurrent programming in Elixir.
We will meet processes. Will learn what are they, why do we need them and how to work with them.
In the previous articles, we have implemented the Toy Robot (you can find it here Part 1 and Part 2).
This time we will improve the implementation and turn it into a console application.
In that application, we will be able to run the simulator and give commands to the robot.
In the first part, we have implemented the placement, rotation and for our toy robot. The robot can also provide us the report about its position. At this part, we will proceed with the implementation. We will implement movement functionality and improve our code a little bit.
Now as we already covered the basics of Elixir in the previous articles we can try to practice a little bit.
Here I would like to solve the Toy Robot Simulator problem which I’ve
found here.
I guess that is not original source and it was reposted at many other resources.