> -- Владислав Жаринов писал(а):
> Да, и ещё один аспект применения шампур-блок-схем в составе "основы действия" над кодом (необязательно в стандарте техноязыка, то же и для ДАЛВЯЗ). Он связан со структурностью.Когда разрешаем себе вывод не только вложением структурных атомов - маршрутный код получается с брейками/континуями, ретурнами/елдами, а то и "ходоками-макаронниками" (на явную метку).  И имеем учебную ситуацию "двоемыслия"
От того что слово goto заменили на слово call, мало что изменилось( кроме состояния стека ). Зато вылезла на поверхность целая "концепция" и  сразу всем стало ясно, что рекурсия - это  совсем не цикл с меткой.
Пусть попытаются внятно объяснить, чем:

goto proc
N:
...
proc:
...
goto N

отличается от

call proc
...
proc:
...
end proc;

кроме копирования параметров по значению. Оное которое можно совершать вполне централизовано способом:

push p1:push p2:push p3:mt=N:goto proc
N:
...
proc:
...
pop p3:pop p2:pop p1:goto mt

Соответствующее:

call proc( p1:p2:p3)
...
proc( p1:p2:p3)
...
end proc;

Три буквы разницы, а шуму на все ивановскую. А детям будет интереснее понять: как было и почему именно так стало. И с указателями бы прояснилось. Что оно такое, что есть адрес, а что есть указатель. Как работает new-dispose и зачем оно вообще нужно.