#lang racket/base
(require (planet williams/simulation/simulation))
(define (customer i)
(printf "~a: customer ~a enters~n"
(current-simulation-time) i)
(work (random-flat 2.0 10.0))
(printf "~a: customer ~a leaves~n"
(current-simulation-time) i))
(define (run-simulation)
(with-new-simulation-environment
(schedule #:now (customer 0) #:priority -100)
(schedule #:now (customer 1) #:priority 0)
(schedule #:now (customer 2) #:priority 100)
(schedule #:now (customer 3))
(start-simulation)))
(run-simulation)