Kotlin Toy Robot 🤖

The Challenge

You have a toy robot on a table top, a grid of 4 x 4 units, there are no obstructions. You can issue commands to your robot allowing it to roam around the table top. But be careful, don't let it fall off!

Create an app that allows commands to be issued to the robot. The robot should be prevented from failing off the table top to its destruction.

A failed command should not stop the app, valid commands should be allowed.

The application should discard all commands until a valid place() command has been executed.

0, 0 on the grid should be seen as bottom left.

Instructions

Robot commands read from CommandFile.txt path should be added Program Arguments in your config
Eg: ${path}/kotlin-toy-robot/src/main/kotlin/to/dev/example/CommandFile.txt

Robot Commands

🤖 `PLACE 4,4,SOUTH`
Places the Robot at a specific position on the board

🦿 `MOVE`
Commands the Robot to move forward one spot in the direction it's facing

⬅️ `LEFT`
Commands the Robot to turn left one spot from the direction it's facing

➡️ `RIGHT`
Commands the Robot to turn right one spot from the direction it's facing

📝 `REPORT`
Reports the current position and facing direction of the Robot