Joe,
Our experience is the same. Our stats are as follows:
273 Scala sources, 706 Java sources, 76s to compile (quad-core i7, 8 GB RAM).
Regarding StackOverflow, the workaround is to increase the JVM max stack size in the Play build file (under play directory it is /framework/build). In fact, we have increased all of our memory settings to run incremental compiles and unit tests more smoothly. Here are our settings:
-Xms1024M -Xmx4096M -Xss2M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=1024M
Regarding research, we hired a Scala/sbt consultant to do some analysis for us. It turns out that the most significant contributor to compile time is the Scala templates. There are two factors at play: 1) each template takes a long time to compile; and, 2) sbt is aggressive about what to recompile, so a lot of templates get recompiled during incremental recompiles.
As for solutions, we have seriously considered moving our templates to Japid42. I am also curious to see how the latest scala/sbt/Play versions will affect compile times.
When we get the time, I plan to publish our analysis for the community's benefit. I'd like to see some real plans to improve compile time since it is our largest productivity drain. The path forward sounds like either 1) the community (and Typesafe) adopts Japid42 as a de facto standard, or 2) the existing templating system is somehow improved (if at all possible).
Sean