Prepack executes programs at compile time, when it is impossible to know the actual values of some expressions.
These values are obtained from the environmental model and are often referred to as unknown values in error messages.
Generally, however, such values are not completely unknown. We might know at compile time that a value is always a number, or perhaps that is always an object that always has a particular property that has a value that is always a number. Consequently we also refer to such values as "abstract values" to emphasize that some (but not all) information about the values have been abstracted away by the model.
Prepack also provides a way of creating an unknown abstract function value.