Какие инструменты можно использовать для четкой передачи таких понятий, как область видимости переменных JavaScript и замыкания, в чем-то похожем на диаграммы последовательностей UML? Например, как можно создать код, подобный следующему : ( Проблема с печально известным циклом )
var arr = [];
for(var i=0; i<10; i++) {
arr.push(function() { alert(i); });
}
for(var j=arr.length;j--;) {
arr[j]();
}
... четко объясните на диаграмме, подобной этой: