I think the main differences Scala being much more of a functional programming language where as Kotlin is a bit of a balance between Java/OOP and FP and affects the complexity/learning curve of the respective languages.
OVERVIEW
- Scala is much more of a functional programming language
- Scala has a steeper learning curve
- Scala community/ecosystem leans much more towards FP
- Kotlin is like Functional Programming "lite"
LANGUAGE
- Scala: has higher kinded types
- Scala: has for comprehensions
- Scala: has type classes
- Scala: has built in support for monads
- Scala: has better support for encoding errors at compile time
MARKET
- Kotlin: has heavy usage on Android
- Kotlin: on the server side is pretty active too
- Kotlin: integrates nicely with java
- Kotlin: multi-platform support
OVERVIEW - Scala is much more of a functional programming language - Scala has a steeper learning curve - Scala community/ecosystem leans much more towards FP - Kotlin is like Functional Programming "lite"
LANGUAGE - Scala: has higher kinded types - Scala: has for comprehensions - Scala: has type classes - Scala: has built in support for monads - Scala: has better support for encoding errors at compile time
MARKET - Kotlin: has heavy usage on Android - Kotlin: on the server side is pretty active too - Kotlin: integrates nicely with java - Kotlin: multi-platform support