Всем привет
Гуру программирования, подскажите плз:
Насколько корректно говорит stacktrace о выхлопе питоновского скрипта (errors). Нашел определение на вики, там говорится что stacktrace это вывод переменных кучи\стэка в момент исполнения. Моих "школярских" познаний в программровании хватает на то, чтобы вспомнить что стэк\куча - сущности употребляемые в объектных языках, а питон интерпретируемый. Отсюда вопрос - насколько корректно говорить про stacktrace если говорить и логировании ошибок в питоне
Спасибо
Да, стектрейс это последовательность вызовов и состояние окружения в некоторой точке программы. И не важно, интерпретатор или система показывают это состояние - это стектрейс.
Даже в языках, которые реализуют парадигму машины состяний есть подобие стектрейса. Это текущее состояние, и условие перехода.
"Объектные" языки и интерпретируемые это тоже самое, что тёплое и мягкое.
Язык может быть объектно-ориентированным и в тоже время интерпретируемым. А может быть процедурным, но компилируемым. Это не взаимоисключающие свойства.
А стек и куча - да они в любом языке есть. Даже если к ним нет прямого доступа. Механизм вызова функций и возврата из них основан на стеке, это реализовано на аппаратном уровне.