Jump to content

Engine (computer science)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Kouroshm (talk | contribs) at 17:18, 31 May 2012 (giving a hint for preemtive multitasking.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

An engine is a continuation-based construct that provides timed preemption. Engines which can contain other engines are sometimes called Nesters 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.


What is Computer Science? Computer Science is often described as the rigorous study of how computing systems work and the design of hardware and software. Many people equate computer science with programming or building computers, and while all computer scientists learn programming and could probably build computers, they go beyond hardware and software. They study the very nature of computing to determine which problems are (or are not) computable. They compare various algorithms to determine if they provide a correct and efficient solution to a concrete problem. They design programming languages to enable the specification and expression of such algorithms. They design, evaluate, and build computer systems that can efficiently execute such specifications. And, they apply such algorithms to important application domains.

(define-syntax timed-lambda

    ((_ formals exp1 exp2 ...)
     (lambda formals (decrement-timer) exp1 exp2 ...))))

preemtive multitasking is very useful,which uses an interrupt mechanism.