The practicality of the EP data model is comparable to the practicality of a programming language that theoretically expresses a class of partial recursive functions with the hypothesis of infinite time and space, but practically expresses a finite set of partial recursive functions.
The EP data model and variables are mathematically sufficient to make Froglingo semantically equivalent to a class of partial recursive functions.
2, we intuitively discuss what typed programming languages are and what untyped programming languages are, and we further distinguish the differences between those untyped systems for partial recursive functions and the untyped Froglingo that has a type equivalent to a class of total recursive functions.
Lacking powerful built-in operators that are derivable from the properties of the class of partial recursive functions makes the sharing of some application-independent code difficult.
In this paper, we are interested in two kinds of untyped systems: the untyped systems which take a class of partial recursive functions as the semantics, and the untyped system, i.
The lambda calculus is a untyped system that take a class of partial recursive functions as semantics.
Due to the fact that the homomorphism from lambda expressions to partial recursive functions is not decidable, however, there is not an effective algorithm that arranges the lambda expressions in orders according to the properties of the class of partial recursive functions.
Instead of partial recursive functions, the EP data model focuses only on total recursive functions.
In a typed programming language, in which a class of partial recursive functions is expressible, we observe that a type, such as integers or a user-defined type, always represents a strict subset of the class.