EDIT: THF beat me to it ;P
The main thread for the map script is still running platform_1 (), but it never stops because it contains a while loop that runs forever. This means platform_2() will never get called.
The solution is to thread those functions so they can continue looping without locking the main thread. All you have to do is change the main function to this:
void main ()
// Call Moving Platform 1 to function
thread platform_1 ();
// Call Moving Platform 2 to function
thread platform_2 ();