for core D devs. Of course, this is much easier in D than in C++ because of D's const and pure attributes.
Nah, the type system isn't critical for doing functional style programming. People who want to do functional programming in C++ has plenty of opportunities, and libraries to support it…
"Functional Programming in C++" by John Carmack
2012, and it doesn't really say anything, does it?