Whole applications can be represented as single LISP functions, so that the XLISP interpreter can eventually be used for programming with ``simulator primitives'' on the task level. Adding these high-level primitives to conventional programming language features promises a high degree of implementation flexibility.