2016-09-28 80 views
1

我在使用OS 10.11.6的Mac上使用Sage 7.2的筆記本界面。我在Mathematica中做了一些我想在Sage中查看的東西,但我是Sage的初學者。在Mathematica中,可以通過使用Mathematica Dynamic []命令來跟蹤我的代碼的執行情況,特別是通過Mathematica檢測它的掛起時間。在Sage中是否有類似這樣的命令,或者是否有另一種方式來跟蹤執行冗長計算的進度,以便實時知道它是否以及何時掛起?此刻,我在代碼中插入打印命令,導致數千個變量元組值的元組在我的屏幕上垂直向下流動。亂。我寧願看到這樣一個元組的值就像他們在數字時鐘上那樣進行更新。這是Dynamic []在Mathematica中實現的。是否有一個Sage命令可以實時跟蹤代碼的執行?

回答

0

那麼,Mathematica沒有調試器。所以他們試圖通過引入Dynamic[]命令來克服這個障礙。但是當編程語言確實有調試器時,爲什麼還要執行類似於Dynamic的東西呢?

有一些方法來調試一個聖人代碼,例如you can refer to this other post。另外還有一個內置命令trace,與Mathematica中的Dynamic做類似的工作。

您也可以參考this (seemingly old) post瞭解更多信息。

+0

「爲什麼麻煩實施類似Dynamic的東西?」在我自己的情況下,我經常運行需要數小時才能執行的程序。我需要實時查看代碼執行的進度,以便知道它何時掛起。否則,我不知道在中斷執行之前要等多久。我是數學家 - 最終用戶,換句話說,不是程序員。我不知道一個調試器是否會爲我做這件事。會嗎? –

+0

程序實際崩潰後,跟蹤似乎會通知我。但通常在我做的時候,一個程序只會大大減慢參數的某些值 - 不會崩潰。 Trace不會告訴我這件事嗎? –

+0

順便說一下,對我來說,這不是一個賢者vs Mathematica比賽。作爲一項基本檢查,我需要能夠在第二個平臺上覆制提交的工作(最初在一個平臺上完成)。所以我希望能夠同時工作。 –

相關問題