As classes de caso se misturam automaticamente na característica do produto, fornecendo acesso não tipado e indexado aos campos sem qualquer reflexão:
case class Person(name: String, age: Int)
val p = Person("Eugene", 45)
val name = p.productElement(0) // name = "Eugene": Any
val age = p.productElement(1) // age = 45: Any
val fields = p.productIterator.toList // fields = List[Any]("Eugene", 45)