Can someone please explain:
"
An FP system cannot compute a program since function
expressions are not objects. Nor can one define new
functional forms within an FP system. (Both of these
limitations are removed in formal functional programming
(FFP) systems in which objects "represent" functions.)
Thus no FP system can have a function, apply,
such that
apply: <x,y> = x :y
because, on the left, x is an object, and, on the right, x
is a function. (Note that we have been careful to keep
the set of function symbols and the set of objects distinct:
thus 1 is a function symbol, and 1 is an object.)"
I understand what it says. I don't understand why
apply:<x,y> === x:y
doesn't work in the construct of functional programming?
Comments
Can someone please explain: " An FP system cannot compute a program since function expressions are not objects. Nor can one define new functional forms within an FP system. (Both of these limitations are removed in formal functional programming (FFP) systems in which objects "represent" functions.) Thus no FP system can have a function, apply, such that apply: <x,y> = x :y because, on the left, x is an object, and, on the right, x is a function. (Note that we have been careful to keep the set of function symbols and the set of objects distinct: thus 1 is a function symbol, and 1 is an object.)"
I understand what it says. I don't understand why
apply:<x,y> === x:y
doesn't work in the construct of functional programming?