1. A method of developing a distributed parallel computing program, comprising steps of: establishing at least one distributed shared variable, wherein the at least one distributed shared variable is a single variable that includes several variables that may be physically distributed across multiple memories; developing at least one distributed sequential computing program to access the at least one distributed shared variable; and transforming the at least one distributed sequential computing program into at least one distributed parallel computing program by spawning at least one child distributed sequential computing program from the at least one distributed sequential computing program when at least one intermediate condition occurs within the at least one distributed sequential computing program, wherein the at least one distributed parallel computing program concurrently uses the at least one distributed sequential computing program and the at least one spawned child distributed sequential computing program to perform parallel processing and/or operations, wherein the at least one intermediate condition comprising one intermediate result that will be required by the at least one spawned child distributed sequential computing program to continue computation.