 
 
 
8.2.2  Transforming an expression into a function
The unapply command transforms
an expression into a function.
- 
unapply takes two arguments:
- 
expr, an expression.
- x, the name of a variable or sequence of names
of variables.
 
- unapply(expr,x)
returns the function defined by the expression expr and
variable(s) x, as in x->expr.
Examples
Remark.
When a function being is defined, the right side of the assignment is
not evaluated, hence g:=sin(x+1); f(x):=g does not define the
function f: x → sin(x+1) but defines the function f: x
→ g. To define the former function, unapply should
be used, as in the following example:
| g:=sin(x+1); f:=unapply(g,x) | 
|  | | | sin | ⎛ ⎝
 | x+1 | ⎞ ⎠
 | ,x↦ sin | ⎛ ⎝
 | x+1 | ⎞ ⎠
 | 
 |  |  |  |  |  |  |  |  |  |  | 
 | 
Hence, the variable g is assigned to a symbolic expression
and the variable f is assigned to a function.
Examples
| f:=unapply(lagrange([1,2,3],[4,8,12]),x) | 
(See Section 17.1.1.)
| f:=unapply(integrate(log(t),t,1,x),x) | 
| f:=unapply(integrate(log(t),t,1,x),x):;
 f(x) | 
Remark.
Suppose that f is a function of 2 variables f:(x,w)→
f(x,w), and that g is the function defined by g: w →
hw, where hw is the function defined by hw(x)=f(x,w).
unapply can also be used to define g.
Example
| f(x,w):=2*x+w:;
 g(w):=unapply(f(x,w),x):;
 g(3) | 
 
 
