Lambdas, alphas in Scalaz -




in many traits' signatures 1 can spot awkwardly looking syntax:

private trait compositionplus[f[_], g[_]] extends plus[λ[α => f[g[α]]]]

could explain me λ[α => f[g[α]]] part? both λ , α seems undefined.

edit: see syntax wonder how interpreted compiler.

this syntax comes kind-projector. compiler plugin rewrites

λ[α => f[g[α]]] 

to

({ type l[α] = f[g[α]] })#l 




wiki

Comments

Popular posts from this blog

Asterisk AGI Python Script to Dialplan does not work -

python - Read npy file directly from S3 StreamingBody -

kotlin - Out-projected type in generic interface prohibits the use of metod with generic parameter -