I'm currently learning Scala and running through the 99 problems (http://aperiodic.net/phil/scala/s-99/) the solution it gives to P07 (http://aperiodic.net/phil/scala/s-99/p07.scala) is as shown:
def flatten(list: List[Any]): List[Any] = list.flatMap {
  case ms: List[_] => flatten(ms)
  case e => List(e)
}
But when I change the _ to Any or the other way around it seems to make no difference in the result. As such I question what the difference is and why they do it this way.