recursividad tipo directo simplemente funciona:indirectos recursivas definiciones de tipos genéricos en Scala
trait TT[T<:TT[T]]
Pero puedo hecho una indirecta con enfoque ingenuo
trait UU[V <: VV[UU[V]]]
trait VV[U <: UU[VV[U]]]
me da error:
CyclicTraits.scala:23: error: type arguments [UU[V]] do not conform to
trait VV's type parameter bounds [U <: UU[VV[U]]]
trait UU[V <: VV[UU[V]]]
^
CyclicTraits.scala:25: error: type arguments [VV[U]] do not conform to
trait UU's type parameter bounds [V <: VV[UU[V]]]
trait VV[U <: UU[VV[U]]]
^
¿Cómo debe expresarse correctamente la recursión de parámetros de tipo indirecto?