ma quello che non capisco è che io la funzione non la chiamo dall'esterno, ma dall'interno.

Nel tuo esempio, io richiamo la funzione b() all'interno della funzione a() e non all'esterno come il tuo esempio mostra.

Nel caso stia sbagliando scusami se insisto, ma voglio capire.

(Nel caso stia sbagliando, come la risolveresti tu?)