#octave
#octave
Вопрос:
По сути, проблема возникает после этих шагов:
1- Я создаю алгоритм на Octave
2- Я сохраняю и выполняю его
3- Я меняю алгоритм
4- Я сохраняю и выполняю снова
Однако по какой-то причине Octave выполняет алгоритм, как это было на «шаге 2» вместо нового «шага 4». Единственный способ исправить это — закрывать и повторно открывать программное обеспечение каждый раз, когда я что-то редактирую. Что я делаю не так?
Комментарии:
1. ваш код сохраняется на локальном компьютере или на сетевом диске? было несколько сообщений о том, что octave не распознает, что файл изменился из-за того, как некоторые серверы обновляют измененные даты, поэтому он запускает уже кэшированный, а не обновляет его.
2. это ошибка, которая была отмечена ранее; это не происходит в общем случае (например, если вы измените переменную в скрипте и повторно запустите скрипт, все будет в порядке), но есть несколько особых случаев, когда это было отмечено, например, при работе с пространствами имен, или где octave предполагает (намеренно), что функции не были обновлены ради оптимизации (например, проверки
help ignore_function_time_stamp
). Не могли бы вы немного описать структуру вашего кода?3. PS. как следует из документации
ignore_function_time_stamp
,clear
редактирование функции перед ее повторным запуском может решить вашу проблему. Вот также пара ошибок, которые могут быть связаны: savannah.gnu.org/bugs/?46281 / savannah.gnu.org/bugs/?46282 . Кстати, какую версию octave вы используете? (и какая ОС?)4.@TasosPapastylianou Спасибо, что указали на
ignore_function_time_stamp
функцию. Согласно документацииignore_function_time_stamp("none")
, octave должен перекомпилировать все файлы. Но не работает в версии 6.4.0. После перезапуска octave выполняется новейшая версия моего кода. Кажется, что ошибочное поведение появляется после того, как я добавляю некоторые из своих папок с кодом в path сadd_path(<my folder>)
5. @PaulWeibert Я не могу комментировать без примера, но, сказав это, многие из связанных с этим поведений, о которых сообщалось как об ошибках выше, теперь исправлены. Возможно, либо то, что вы описали, теперь исправлено в последней версии octave (версия 7.2.0), либо вы обнаружили ошибку, конкретно связанную с addpath, приводящую к аналогичному поведению. Я бы посоветовал вам сообщить об этом в багтрекере, если это последнее 🙂