Engine (computer science)

Last updated

An engine is a continuation-based construct that provides timed preemption. Engines which can contain other engines are sometimes called Nesters [1] and engines which do not have this ability are then called flat engines or "solo engines". To implement timed preemption there needs to be a clock. This clock can measure real time or simulated time. Simulated time can be implemented in a language like Scheme, by making each function start with decrementing the clock. [2]

(define-syntaxtimed-lambda((_formalsexp1exp2...)(lambdaformals(decrement-timer)exp1exp2...))))

References

  1. Dybvig, R. Kent; Hieb, Robert (July 21, 1988). "Engines from Continuations" (PDF). Indiana University - Computer Science Department.
  2. Haynes, Christopher T.; Friedman, Daniel P. (1987-01-01). "Abstracting timed preemption with engines" . Computer Languages. 12 (2): 109–121. doi:10.1016/0096-0551(87)90003-8.