3 ms·
> (Fair warning: most pure Scala libraries have heavy FP patterns, but I've mostly stuck to popular Java libraries and experience has been solid doing this so f
by dkarl 5y ago
> (Fair warning: most pure Scala libraries have heavy FP patterns, but I've mostly stuck to popular Java libraries and experience has been solid doing this so far)
This is because it's so easy and natural to use Java libraries from Scala, if you aren't trying to write in a pure FP style. Sharing libraries with the larger Java ecosystem means you get APIs that don't take advantage of Scala features, but it has a lot of advantages, too, and this is what most Scala programmers do if they aren't fully committed to functional programming.
Doing pure FP and managing side effects through effects requires wrapping or replacing Java libraries with pure, effectful APIs, and that is the raison d'etre of a lot of Scala libraries. On one hand, the smaller community means you miss out on the maturity and battle-testing that adoption in the larger Java ecosystem brings, but on the other hand, you get to write in pure, effectful FP style, if that's your thing.