This gist outlines the way of programatically representing a Ludo board and the algorithm for calculating the next position of a ludo piece after performing a move with any number of steps.
Although most important details are elaborated in this gist, a basic knowledge of Ludo is obviously required to understand unexplained trivial details.
To simplify further reading, the terms used frequently next are defined below: