Typelevel compositional methods