As far as I know, CPS is supposed to be an intermediate form for compilers and a theoretical framework to understand control flow and concurrency constructs. The second part is I think a very good reason why most programmers should learn about CPS; but I don't think CPS was ever meant to be something you were supposed to routinely program into, in the same way you don't routinely program in assembler.