есть совместимость, в том и дело, многие библиотеки можно использовать, нельзя только макросы. Мало того, большую часть кода из скалы 3 можно в скала 2 использовать (теоретически)
Судя по "популярности" плея веб фреймы в скале не приживаются по ряду причин. Фреймворки обычно появляются там где собирание функционала из отдельных частей требует значительного эффорта и соблюдения большого количества недокументированных правил, до той степени что проделанная такая работа не под силу маленькому коллективу и он вынужден пользоватся готовой (вот это и есть фрейм). В скале все с этим хорошо(в отличие от жавы) и не надо изобретать di фреймворк чтобы написать небольшой сервис. Вон люди спокойно с конструкторами живут.
Касаемо di. А почему "люди спокойно живут с конструкторами"? Им не нужна гибкость, возможность переопределять среду внешним инвайронментом? Или это решается как-то по-другому?