Mitch, and Akera Atsushi. Penn Printout (March 1996) hGp://www.upenn.edu/compuMng/printout/archive/v12/4/pdf/gene.pdf ENIAC's main control panel, U. S. Army Photo
• Sobware TransacMonal Model • Message Passing models • CommunicaMng sequenMal processes • Actors • Processes-based actors • AcMve Objects • Event-loop concurrency ...and developers start to be combined in one single applicaMon S. Tasharofi et al. “Why Do Scala Developers Mix the Actor Model with Other Concurrency Models?,” ECOOP 2013. 7
meta-level interface with a minimal performance overhead? 2. How to provide debugging tools that can adapt their features to the concurrency model at use? Project MetaConc: Towards Meta-Level Engineering and Tooling for Complex Concurrent Systems Research Challenges
queue event loop ‘remote’ object myLib.add(song) 9 M. Miller, D. Tribble, and J. Shapiro, “Concurrency Among Strangers Programming in E as Plan CoordinaMon,” 2005.
• Breakpoint catalog E. G. Boix, C. Noguera, and W. De Meuter, “Distributed debugging for mobile networks,” The Journal of Systems & Sobware, 2014. actor view editor debug element view console 11
OF PARTIAL FAILURES M ethod breakpoints Sym bol breakpoints Code breakpoints Conditional breakpoints Sender breakpoints Receiver breakpoints On entry breakpoints On exit breakpoints M essage breakpoints M essage resolution breakpoints M essage conditional breakpoints Role Designation Objective Figure 10.5: REME-D ’s breakpoint catalog provided to users. 12
Actors on Truffle + Graal • CommunicaMng event loop based language • Debugging features: Ø Inspect actor and message state Ø Tracking causality of messages Ø No disMncMon on designaMon: all breakpoints work with AST node Ø Extension of REME-D breakpoint catalog 14