変数にスコープがある言語はキツいね。
自分はCやJavaに挫折したCOBOLerだけど、
その原因は主に変数スコープだった。

ローカル変数とカッコの位置関係、それに加えて
種類の多い繰り返し構文。これらのせいで
凶悪なほどにプログラムの流れが追いにくくなる。
Javaはさらにクラスとか言って処理そのものにも
スコープがあるので、輪をかけて大変。
何でプログラム言語はこう複雑になっちまったんだろうね。