📝“Goto considered harmful” is about unconstrained goto

“Goto considered harmful” talks about unconstrained goto—one that is present in assembly and very first high-level languages. Unconstrained goto can jump between function boundaries.

Today’s gotos (even one in C) are domesticated gotos—they cannot jump out of function (in some languages they can only exit loops). That’s why a big part of the criticism does not apply.