¿Qué significa el operador `#` en Scala?

Veo este código en este blog: Programación a nivel de tipo en Scala:

// define the abstract types and bounds
trait Recurse {
  type Next <: Recurse
  // this is the recursive function definition
  type X[R <: Recurse] <: Int
}
// implementation
trait RecurseA extends Recurse {
  type Next = RecurseA
  // this is the implementation
  type X[R <: Recurse] = R#X[R#Next]
}
object Recurse {
  // infinite loop
  type C = RecurseA#X[RecurseA]
}

Hay un operador# en el códigoR#X[R#Next] que nunca he visto. Dado que es difícil buscarlo (ignorado por los motores de búsqueda), ¿quién puede decirme qué significa?

Respuestas a la pregunta(8)

Su respuesta a la pregunta