A general-purpose, modular, block-structured language from CACI, which provides support for object-oriented programming and discrete event simulation. It is intended for building large process-based discrete event simulation models through modular and object-oriented mechanisms similar to those of Modula-2.

MODSIM is descended from Modula-2 and Simula. It supports multiple inheritance, templates, reference types, polymorphism, and process-oriented simulation with synchronous and asynchronous activities using explicit simulation time.

See also MODSIM II, USAModSim.