この記事はadventar版Scalaアドベントカレンダーの21日目です。 担当は@aoiroaoinoです。17日ズサーしてる場合じゃなかった。とっても遅刻しちゃってすみません。。 まえがき いつも通りMonocleの話です。事の発端はこのissueとPRでした。 https://github.com/julien-truffaut/Monocle/issues/288 https://github.com/julien-truffaut/Monocle/pull/289 全く知らなかったのだけど、追加されたexampleやらtestやら眺めてたら便利そうだったので。 Platedのインスタンス まず、Plated自体は型クラスで定義は以下のとおり。 abstract class Plated[A] extends Serializable { self => def plate: Tr