But this is the way how it's should be in most of the universities, I think.
Really interested in watching my friend passing CS51.
Starting programming from functional approach seems to be more productive and useful.
And switching from functional to imperative should be a lot easier.
That's like starting from high to low level, that's less stressful for most of the students.
An ability to write good and readable code, which will aim to avoid side effects, is more important, now, than writing low level optimized code.