A formal framework for computer simulations: surveying the historical record and finding their philosophical roots