From the programmer's standpoint, it may be perceived as a language taking after logic programming, functional programming, and object-oriented programming. The second part is a formal account of LIFE's object unification seen as constraint-solving over specific domains. June 1991 LIFE is an experimental programming language proposing to integrate logic programming, functional programming, and object-oriented programming. These are approximation structures denoting sets of values.
LIFE further enriches the expressiveness of psi-terms with functional dependency constraints.
We must explain the meaning and use of functions in LIFE declaratively as solving partial information constraints. These constraints do not attempt to generate their solutions but behave as demons filtering out anything else. In this manner, LIFE functions act as declarative coroutines. We need to show that the psi-term's approximation semantics is congruent with an operational semantics viewing functional reduction as an effective enforcing of passive constraints. This system offers a theoretical and practical alternative to the usual Herbrand system of constraints over constructor trees.