Sergey Filippov писал(а):В Robolab многозадачность и подпрограммы вполне обходятся без локальных переменных.
Просто они там так не называются.
В роболаб, насколько я понял, есть "веревки с данными" - их область видимости явно
указана связями.
Если такая веревка заходит в блок снаружи - это аргумент,
если и источник и все приемники только внутри блока - локальная переменная,
если выходит из блока - результат.
То что они не имеют имен, не означает, что это не переменные.
Поэтому использование одной и той же функции в разных местах программы
не вызывает проблем - эти веревки не связаны.
С и графическая надстройка?... Одумайтесь...
Дело не в Си совсем, а в конструкциях языка - в этом смысле
Си, Паскаль, Бэйсик по большому счету одинаковы.
(Ну если уж совсем глубоко в ООП и поддержку ОС не лезть)
Ассемблер - это весело конечно, только я не думаю, что учителю информатики понравится
объяснять на уроке про циклы, типы, функции, области видимости и т.д.
А на робокружке убивать сказанное на уроке джампами, ручным распределением памяти
и подпрограммами с выходом по джампу и тремя точками входа

Если произойдет описанная картина, то должна получиться хорошая каша. А ребенок должен осознать, что он неправ.
А он-то при чем? Если ему надо одну и ту же функцию использовать в двух ветках у него что, выбор есть?
А если он эту функцию готовую взял из библиотеки? Ему что в каждую из библиотечных функций залазить и проверять, не пересекаются ли имена? Бред какой-то... Вы им жизнь облегчить хотите или усложнить?

И я бы посмотрел на учителя, который поможет ребенку искать ошибку... Как он залазит в каждую функцию,
запоминает все переменные и проверяет не пересекаются ли они
