I\'ve heard that the following features reduce debuggability (because they are anonymous and debuggers cannot trace it well)
I don't particularly believe this is the case, from my perspective. I'm using the functional features of Scala, which compiles to run on the Java Virtual Machine. Debuggers such as Intellij's work with this properly.
Having said that, some code constructs are presented in a different fashion to how you'd normally expect. Function blocks appear in some cases as inner classes. Lists appear as head entity plus a tail list (or it might be the other way around - I've only just started with this!).