(b) "EVALQUOTE is capable of handling special forms as a sort of exception" [McCarthy 1962]. Nowadays such an exception is referred to as a kluge [Raymond
在基本库中将函数复合定义为多态中缀算符(f o g),map和fold高阶函数有较高效率的实现。 例外可以使用raise关键字发起,并通过模式匹配handle构造来处理: exception Undefined; fun max [x] = x | max (x :: xs) = let val m = max xs in if