Scala assigning vals

Why isn’t it possible to have this:

def main(args:Array[String]) {
val whatever:String // Have it uninitialized here

if(someCondition) {
whatever = “final value” // Initialize it …