< *>中的参数顺序和Scala中的括号

时间:2015-03-05 15:47:57

标签: scala scalaz applicative

<*>似乎被定义为M[A]的方法,它接受M[A=>B]。这就是我需要括号的原因:

val f: A => B => C = ...
val as: List[A] = ...
val bs: List[B] = ...
val cs: List[C] = ...
val r = cs <*> (bs <*> (as <*> List(f)))  

另一方面,如果我将<*>定义为接受M[A=>B]的{​​{1}}方法,我可以写

M[A]

有意义吗?

0 个答案:

没有答案