It was already like that in older languages like Lisp, Smalltalk and CLU, just C++ made them in a different way.