https://github.com/non/kind-projector
@yuroyoro さんが書いていたこれ
Scalaにおける型パラメータの部分適用 [({type F[X] = G[A,X]})#F] について
をプレースホルダを使って短く書けるようになるっていうplugin。
Scalaz に大量にでてくるあれです。
自分が試そうとした時点では jar は publish されていないようだったので、ちょっとScalazに組み込んでためしてみたら、こんな感じ
https://github.com/xuwei-k/scalaz/compare/278a4e810edafca229b42a86d3f86eb6c8d7cf6c...kind-projector
で、すんなりうまくいきました。plugin本体のコード130行程度のみしかなくて、こんなことできるなんてすげぇーーーと一人で感動していました。ただ、共変とか反変の場合のやり方がわからなかった(まだ機能として存在しない?)ですが。
継続のpluginみたいに、標準添付のpluginにしてほしい、っていうかもうcompiler本体に組み込んじゃっていいんじゃないか?