Do You Need to Know Java Before Learning Scala?

javascala

I'm interested in learning Scala. I've been reading a lot about it, but a lot of people value it because it has an actor model which is better for concurrency, it handles xml in a much better way, solves the problem of first class functions.

My question is do you need to know Java to understand/appreciate the way things work in Scala?
Is it better to first take a stab at Java and then try Scala or you can start Scala with absolutely no java backround?

Best Answer

Scala is its own language, and by itself doesn't require knowledge of any existing languages. If you wanted to, you could learn Scala as your first language. On the Learning Scala page of their website, there are entry points to the tutorial for different levels of experience, ranging from first-time programmers to programming language researchers to functional programming experts.

Most of the documentation is focused on people who know how to program, unfortunately, but I've actually worked through some of the Scala tutorials. It's not that bad. It's expected that you understand certain basic concepts, though.