In today’s challenge, we’re asked to interpret a series of basic command lines from a file and update the position of our submarine accordingly. It’s basically a graph walk of sorts, with instructions of
forward. (Apparently you cannot go backward, as in life.)
As with yesterday’s challenge, we could do it imperatively with a
foreach() loop and a couple of state variables floating around, but that conflates a whole bunch of different behaviors into one blob of code. We don’t want to do that, so let’s step back and consider the problem more clearly.