Método tomando implícito CanBuildFrom não funciona com eta-expansão?

Eu tenho um método a seguir:

def firstAndLast[CC, A, That](seq: CC)(implicit asSeq: CC => Seq[A], cbf: CanBuildFrom[CC, A, That]): That = {
  val b = cbf(seq)
  b += seq.head
  b += seq.last
  b.result
}

Vejo:Método usando Seq [T] para retornar String em vez de Seq [Char] por lógica. Funciona como um charme no primeiro caso, mas não consegue compilar no segundo:

List("abc", "def") map {firstAndLast(_)}
List("abc", "def") map firstAndLast

Dando:

error: No implicit view available from CC => Seq[A].
List("abc", "def") map firstAndLast

Alguma idéia de como melhorar essa declaração para evitar envolvimento extra? Parece que eta-expansão é o problema (?)

questionAnswers(2)

yourAnswerToTheQuestion