This document discusses concepts and algorithms in discrete-event simulation. It describes key concepts like events, activities, and the event scheduling algorithm. The event scheduling algorithm involves removing the imminent event from the future event list, advancing the clock, executing the event to update the system state, and generating future events. It also discusses world views like event scheduling and activity scanning. The document provides an example of simulating a single-channel queue and how simulation can be implemented in Java and GPSS.