Hacker News new | ask | show | jobs
by adrianratnapala 3366 days ago
It's intended to be restrictive. The idea is that more than three levels of indentation should be the exception rather than the rule. Exceeding that without good reason is a hint that functions should be split up.

Having some such rough limit is a good thing, but the number 3 is language dependent. Java for example automatically eats one level for the class.

Also C lacks syntax such as nested functions, try blocks, python-style context managers and all kinds of other stuff which excuse more levels of indentation.