That paper explains that the Scala engineer performed numerous algorithmic improvements, whereas the Java one "refused" to (he reported somewhere else, on a mailing list? that he wasn't told it was for a paper). The paper also explains that using Scala idiomatic for-comprehensions produced very slow results.