函数变量(值函数)与上下文
函数类型-(定义)->函数变量-(上下文赋值)->函数构建-->值函数-->求值。
一、函数类型
typedef void (^AFNetworkReachabilityStatusBlock)(AFNetworkReachabilityStatus status);
public typealias Listener = (NetworkReachabilityStatus) -> Void
int (*p)(int, int)
二、函数变量
作为成员(函数)变量和参数(函数)变量
@property (readwrite, nonatomic, copy) AFNetworkReachabilityStatusBlock networkReachabilityStatusBlock;
static void AFPostReachabilityStatusChange(SCNetworkReachabilityFlags flags, AFNetworkReachabilityStatusBlock block)
open var listener: Listener?
以及不完备函数的局部变量。
三、函数赋值
四、上下文赋值
1、柯里化;
2、偏函数;
3、调用赋值;
4、内部函数、闭包与上下文;
五、偏函数、柯里化、内部函数是什么
保存在上下文(函数)中的局部初始化的值函数(函数变量)。值函数。
保存在上下文(函数)中的初始化了的值函数。
上下文(函数)只是对函数变量进行了计算上下文赋值。
值函数的执行依赖于上下文(函数)的调用。
func pipeLineGo(en:[(String) -> String ])->(String)->String{
func innerFunc(px:String)->String{
return en.reduce(px, { (px, fn) -> String in
return fn(px);
})
}
return innerFunc;
}
六、不完备函数与构建
函数内部引用了上下文中环境变量的函数。
上下文环境变量的赋值过程为不完备函数的构建过程。