diff --git a/README.md b/README.md index 3473c236..9ce94f7b 100644 --- a/README.md +++ b/README.md @@ -125,7 +125,7 @@ This project was initially developed in the context of the Programming Experienc If you would like to cite this project or would like to learn more about the theory behind, please refer to the following publications: -- Christoph Thiede, Marcel Taeumel, and Robert Hirschfeld. 2023. [Object-Centric Time-Travel Debugging: Exploring Traces of Objects.](https://doi.org/10.1145/3594671.3594678) In Companion Proceedings of the 7th International Conference on the Art, Science, and Engineering of Programming (\’23 Companion), March 13–17, 2023, Tokyo, Japan. ACM, New York, NY, USA, 7 pages. DOI: [10.1145/3594671.3594678](https://doi.org/10.1145/3594671.3594678) +- Christoph Thiede, Marcel Taeumel, and Robert Hirschfeld. 2023. [Object-Centric Time-Travel Debugging: Exploring Traces of Objects.](https://doi.org/10.1145/3594671.3594678) In *Companion Proceedings of the 7th International Conference on the Art, Science, and Engineering of Programming* (*\’23 Companion*), March 13–17, 2023, Tokyo, Japan. ACM, New York, NY, USA, 7 pages. DOI: [10.1145/3594671.3594678](https://doi.org/10.1145/3594671.3594678)
BibTeX @@ -134,6 +134,8 @@ If you would like to cite this project or would like to learn more about the the title = {Object-Centric Time-Travel Debugging: Exploring Traces of Objects}, booktitle = {Companion Proceedings of the 7th International Conference on the Art, Science, and Engineering of Programming}, year = {2023}, + month = {3}, + days = {13--17}, isbn = {9798400707551}, publisher = {Association for Computing Machinery}, address = {New York, NY, USA}, @@ -143,7 +145,7 @@ If you would like to cite this project or would like to learn more about the the series = {Programming '23 Companion} }
-- Christoph Thiede, Marcel Taeumel, and Robert Hirschfeld. 2023. Time-Awareness in Object Exploration Tools: Toward In Situ Omniscient Debugging. In Proceedings of the 2023 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward! ’23), October 25–27, 2023, Cascais, Portugal. ACM, New York, NY, USA, 14 pages. DOI: [10.1145/3622758.3622892](https://doi.org/10.1145/3622758.3622892). To appear. +- Christoph Thiede, Marcel Taeumel, and Robert Hirschfeld. 2023. [Time-Awareness in Object Exploration Tools: Toward In Situ Omniscient Debugging.](https://dl.acm.org/doi/10.1145/3622758.3622892) In *Proceedings of the 2023 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software* (*Onward! ’23*), October 25–27, 2023, Cascais, Portugal. ACM, New York, NY, USA, 14 pages. DOI: [10.1145/3622758.3622892](https://doi.org/10.1145/3622758.3622892)
BibTeX @@ -152,12 +154,13 @@ If you would like to cite this project or would like to learn more about the the title = {Time-Awareness in Object Exploration Tools: Toward In Situ Omniscient Debugging}, booktitle = {Proceedings of the 2023 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software}, year = {2023}, + month = {10}, + days = {25--27}, publisher = {ACM}, address = {New York, NY, USA}, doi = {10.1145/3622758.3622892}, numpages = {14}, location = {Cascais, Portugal}, - series = {Onward! '23}, - note = {To appear} + series = {Onward! '23} }
diff --git a/packages/TraceDebugger.package/TraceDebugger.class/instance/controlButtonSpecs.st b/packages/TraceDebugger.package/TraceDebugger.class/instance/controlButtonSpecs.st index 1846d681..4f9eaa6d 100644 --- a/packages/TraceDebugger.package/TraceDebugger.class/instance/controlButtonSpecs.st +++ b/packages/TraceDebugger.package/TraceDebugger.class/instance/controlButtonSpecs.st @@ -6,6 +6,7 @@ controlButtonSpecs ('Restart' restart 'rewind this context to its start (r)' canStepBackward) ('Into' stepInto 'step into next message send (e)' canStepForward) ('Over' stepOver 'step over next message send (t)' canStepForward) - ('Through' stepThrough 'step into next block/out of current block (T)' canStepForward) + ('Through' stepThrough 'step into next block/out of current block (T)' canStepForward) ('Back' stepBack 'rewind before previous message send (B)' canStepBackward) - ('Where' showWhere 'select next expression (w)' hasContextSelected)) \ No newline at end of file + ('Where' showWhere 'select next expression' hasContextSelected) + ('Up' jumpToSender 'jump to sender (w)' hasContextSelected)) \ No newline at end of file diff --git a/packages/TraceDebugger.package/TraceDebugger.class/methodProperties.json b/packages/TraceDebugger.package/TraceDebugger.class/methodProperties.json index ee512005..f1e372b7 100644 --- a/packages/TraceDebugger.package/TraceDebugger.class/methodProperties.json +++ b/packages/TraceDebugger.package/TraceDebugger.class/methodProperties.json @@ -124,7 +124,7 @@ "contextTreeKey:from:event:" : "ct 8/1/2022 01:10", "contextVariablesInspector" : "ct 11/20/2021 16:11", "contextVariablesInspectorClass" : "ct 3/19/2022 20:49", - "controlButtonSpecs" : "ct 2/21/2022 19:43", + "controlButtonSpecs" : "ct 9/15/2023 22:37", "controlButtonsFrame" : "ct 11/20/2021 15:33", "copyBugReportToClipboard" : "ct 3/12/2022 17:40", "currentCompiledMethod" : "ct 11/20/2021 21:08", diff --git a/packages/TraceDebugger.package/TraceDebuggerHelp.class/class/basicBasicNavigation.st b/packages/TraceDebugger.package/TraceDebuggerHelp.class/class/basicBasicNavigation.st index 91e6849e..b686127a 100644 --- a/packages/TraceDebugger.package/TraceDebuggerHelp.class/class/basicBasicNavigation.st +++ b/packages/TraceDebugger.package/TraceDebuggerHelp.class/class/basicBasicNavigation.st @@ -17,9 +17,10 @@ You can use the stepping buttons to navigate through the program trace. The trac <#figureButtonThrough> Step to the next expression in the same method, including expressions in blocks. <#figureButtonBack> Step back the previous message send. <#figureButtonWhere> Select the expression that will be executed next. +<#figureButtonUp> Jump to the sender of the current context. Alternatively to the stepping buttons, you can also navigate through the context tree: Red-click any context to jump to the time where it was active. Shift + red-click any context to select its sender at its activation time.! -]style[(16 1 97 13 1257)a0b,a0,,i,!' readStream nextChunkText) +]style[(16 1 97 13 1318)a0b,a0,,i,!' readStream nextChunkText) key: #basicBasicNavigation; shouldStyle: false; yourself \ No newline at end of file diff --git a/packages/TraceDebugger.package/TraceDebuggerHelp.class/class/figureButtonUp.st b/packages/TraceDebugger.package/TraceDebuggerHelp.class/class/figureButtonUp.st new file mode 100644 index 00000000..f55d76f7 --- /dev/null +++ b/packages/TraceDebugger.package/TraceDebuggerHelp.class/class/figureButtonUp.st @@ -0,0 +1,4 @@ +figures +figureButtonUp + + ^ self figureButtonNamed: 'Up' \ No newline at end of file diff --git a/packages/TraceDebugger.package/TraceDebuggerHelp.class/methodProperties.json b/packages/TraceDebugger.package/TraceDebuggerHelp.class/methodProperties.json index 94472b74..1521d541 100644 --- a/packages/TraceDebugger.package/TraceDebuggerHelp.class/methodProperties.json +++ b/packages/TraceDebugger.package/TraceDebuggerHelp.class/methodProperties.json @@ -2,7 +2,7 @@ "class" : { "applyUserInterfaceTheme" : "ct 3/18/2022 20:45", "basicAdvancedNavigation" : "ct 8/1/2022 01:11", - "basicBasicNavigation" : "ct 6/18/2022 21:29", + "basicBasicNavigation" : "ct 9/15/2023 22:40", "basicContextFilters" : "ct 3/18/2022 20:43", "basicEntryPoints" : "ct 5/11/2022 22:54", "basicFindingContexts" : "ct 3/18/2022 20:32", @@ -28,6 +28,7 @@ "figureButtonProceed" : "ct 3/18/2022 19:36", "figureButtonRestart" : "ct 3/18/2022 19:38", "figureButtonThrough" : "ct 3/18/2022 19:38", + "figureButtonUp" : "ct 9/15/2023 22:40", "figureButtonWhere" : "ct 3/18/2022 19:38", "figureContextAddFilter" : "ct 3/18/2022 21:16", "figureContextToolTip" : "ct 3/18/2022 18:35",