3 ms·
There are minor exceptions that make C++ not a superset of C. See https://stroustrup.com/bs_faq.html#C-is-subset https://stroustrup.com/bs_faq.html#C-is-subset
by eesmith 5y ago
There are minor exceptions that make C++ not a superset of C. See https://stroustrup.com/bs_faq.html#C-is-subset https://stroustrup.com/bs_faq.html#C-is-subset and a full list at https://stroustrup.com/3rd_compat.pdf https://stroustrup.com/3rd_compat.pdf .
Other languages can be transpiled to C (f2c from 1990 for Fortran, p2c from 1989 for Pascal) so cfront's C++->C conversion isn't really connected to the idea of superset-ness.
I've heard the argument that learning Latin first makes it easier to learn the Romance languages which derive from it. I don't believe it, in part because I found what helps me most to learn a language is actually having a need to use it (like visiting Germany for the first time after a year of German classes at school.) Start by learning the language you're going to use. Don't start with Algol simply because it's the historic foundation to C, Pascal, PL/1, etc.
Someone starting with K&R as a way to learn C++ will need to discard some styles, like using malloc/free. (And someone starting with Latin as a way to learn Spanish means discarding most of Latin's case system.)