1. Overview
  2. Debugging and CI
  3. Other workflows
  4. Debugging as a service
  5. Basic interface
  6. Call stacks
  7. Explaining dataflow
  8. Multiprocess
  9. Search box
  10. Source files
  11. Condition and print expressions
  12. Toolbox
  13. Alerts
  14. Application logs
  15. Callees
  16. View operators
  17. Notebook
  18. Instruction execution
  19. Browser UI integration
  20. Additional views
  21. GDB
  22. System debug info
  23. Compiler issues
  24. Future work
  25. Related work
  26. Conclusions

View operators

Each Pernosco view is an independent timeline of events. The current focus is visually highlighted within each view, and the events in a view are ordered by time from top to bottom, but there is no visual indication of the relative ordering of events in different views. Sometimes it would be useful to have a timeline showing the relative order of different kinds of events (e.g. garbage collector invocations and console output).

We overcome this limitation by allowing multiple views to be combined into a single view. Not all combinations are supported, but for those that are, users can merge views by simply dragging one into another. The new view contains the union of the events, all ordered by time.

This is a very simple "union" operator on views. One can imagine more complex operators, and even explicit query languages, but we don't have enough user experience to pursue that yet.

<< Callees Notebook >>