login писал(а):
Я как-то читал, что вызов процедуры - это, всегда, сохранение состояния стека, передача новых параметров в процедуру, потом по окончании работы возврат стека. Это медленно, по сравнению с линейным кодом. (функции, наверное, тоже, туда тоже передаются параметры) Отчасти еще и поэтому процедурные языки медленнее работают.Медленнее чего? "Процедурный" - в смысле "любое действие выполняющий через процедуры"? (сам я пока не интересовался PureBasic и его бесплатной альтернативой - FreeBasic, генерируемый код не смотрел) Паскаль такой же "процедурный" (правильнее - "функциональный"), как и большинство современных универсальных языков, всё зависит от того, как именно пишешь. Например, объектно-ориентированное программирование гораздо ужаснее в результирующем коде выглядит, там 90% времени тратится на "лишние" операции, непосредственно к логике приложения не относящиеся. Зато с точки зрения исходного кода всё "красиво". Вообще сейчас процессоры уже неплохо оптимизированы именно под функциональное и "процедурное" программирование. Равно как и под "объектное", которое на деле является ещё более процедурно-функциональным, да ещё в добавок перегруженным работой со вложенными структурами и косвенными адресациями.