The timing constraint mechanism in a real-time programming language called FLEX is described. A FLEX program can use the constraint primitives to express timing and resource requirements. If the required time or resources are not available at run-time, a FLEX program can dynamically produce monotonic imprecise results. Both time and system resources are defined as first-class objects in the language so that they can be evaluated just like any other first-class object. By unifying time, resources, and normal objects, the semantics and the executions of real-time programs are more manageable. Some implementation issues for FLEX are discussed, and some performance data are presented.