Tim Felgentreff

Profile

I am a member of the Truffle/Graal team at Oracle Labs. I was led here by my interests in programming languages and virtual machine design, and my involvement with the PyPy/RPython project and various other dynamic language VMs. My work revolves around dynamic language interoperability, connecting them with native C code in a safe manner, and providing cross-language tool support. I also continue to collaborate with the Hasso Plattner Institute at the University of Potsdam. I run 10km in less than 50 minutes.

Education

2012-2017

Dr.rer-nat., Hasso Plattner Institute, University of Potsdam, Potsdam, Germany
grade: summa cum laude
advisor: Robert Hirschfeld, Hasso Plattner Institute, University of Potsdam
additional reviewers:
Wolfgang de Meuter, Vrije Universiteit Brussel
Alan Kay, Viewpoints Research Institute

In my thesis I presented Babelsberg, a formal design with multiple implementations for object-constraint programming to integrate constraint declaration and continuous satisfaction with mutable object-oriented structures and behavior.

Doctoral Thesis
The Design and Implementation of Object-Constraint Programming
2010-2012

M.Sc., Hasso Plattner Institute, University of Potsdam, Potsdam, Germany
final grade: 1.0 (A+)

During my master’s studies, I focused on programming language concepts to facilitate development tools, end-user programming, modularity, and meta-circularity especially in distributed and parallel programming settings.

Master’s Thesis
Comparison, Replay, and Refinement of Communication Traces for Debugging Distributed Failures
2007-2010

B.Sc., Hasso Plattner Institute, University of Potsdam, Potsdam, Germany
final grade: 1.4 (A)

Bachelor’s Thesis
Post-mortem Analysis of Debug Traces
2005-2007

Abitur, Pückler Grammar School, Cottbus, Germany
final grade: 1.0 (A+)

2004-2005

AS-level studies, Budehaven Community College, Bude, England

2000-2004

GCSE-level studies, Heinrich-Heine Grammar School, Cottbus, Germany

Experience

July 2017-present

Senior Software Engineer, Oracle Labs Germany, Potsdam, Germany
At Oracle Labs I am a member of the Truffle/Graal group working on virtual machine technology for dynamic languages.

Apr 2016-June 2017

Research Assistant, Hasso Plattner Institute, University of Potsdam, Potsdam, Germany
My research focused on novel programming paradigms, virtual machines for dynamic programming languages, and end-user programming with a special interest in computer science education for children.

Oct 2012-Apr 2016

Ph.D. Student, Hasso Plattner Institute, University of Potsdam, Potsdam, Germany
My Ph.D. research focused on object-constraint programming, a novel approach at combining constraint solvers with dynamic, object-oriented languages in a clean and powerful way.

Oct 2014-Dez 2014

Research Visit, Nanjing University, Nanjing, China
At Nanjing University I collaborated with researchers on emotion analysis in Twitter-like social networks.

Feb 2010-Oct 2012

Working Student, Finn GmbH, Berlin, Germany
At Finn GmbH I was involved in plugin development for Redmine.

Oct 2009-Oct 2012

Working Student, Hasso Plattner Institute, Potsdam, Germany
I was a tutor at the Software Architecture Group, assisting the staff with undergraduate lectures on software engineering and software development methodologies, using Squeak/Smalltalk as the educational language.

Aug 2011-Nov 2011

Intern, VMware, Beaverton, OR, USA
At VMware I was working on the MagLev Ruby VM built on top of the distributed GemStone/S Smalltalk object database system.

May 2010-Aug 2010

Ruby Summer of Code Participant
As part of the 2010 Ruby Summer of Code, I built out prototype work by Wayne Meissner to add support for Ruby C extensions to JRuby.

Skills

 
Languages
German - native proficiency
English - full professional proficiency
French - limited working proficiency
Mandarin - rudimentary knowledge

 

Software Projects
Babelsberg - a family of object-constraint languages

RSqueakVM - a research Squeak/Smalltalk VM written in RPython

Core Contributions
Python on GraalVM - an implementation of Python 3 for the GraalVM
Squeak - a modern implementation of Smalltalk-80
JRuby - an industry-grade Ruby implementation on the JVM
Topaz - an experimental Ruby implementation written in RPython
MagLev - a Ruby implementation on top of the GemStone/S object-database
PyPy - a fast Python implementation with a tracing just-in-time compiler
Lively Kernel - a self-supporting development environment on a Web page

Stratagus - a real-time 2d strategy game engine

Publications

The documents provided here are included by me as contributing author as a means to ensure access to the work for personal, non-commercial use. They are not for redistribution. These are the author versions of the papers, the definitive versions are published in the relevant proceedings. Copyright and all rights therein are maintained by the authors or by other copyright holders, notwithstanding that they have offered their works here electronically. It is understood that all persons copying this information will adhere to the terms and constraints invoked by each author’s copyright. These works may not be reposted without the explicit permission of the copyright holder.

 

Clément Béra, Eliot Miranda, Tim Felgentreff, Marcus Denker, and Stéphane Ducasse. “Sista: Saving Optimized Code in Snapshots for Fast Start-up”. In Proceedings of the 14th International Conference on Managed Languages and Runtimes, ManLang 2017, Prague, Czech Republic, September 27 - 29, 2017, 1–11, 2017. doi:10.1145/3132190.3132201https://doi.org/10.1145/3132190.3132201.

Tim Felgentreff. “Checks and Balances: Object-Constraints Without Surprises”. In Proceedings of the 9th Ph.d. Retreat of the HPI Research School on Service-Oriented Systems Engineering. Tech. rep. 100. Hasso Plattner Institute, 2016.

Tim Felgentreff. “Implementing an Object-Constraint Extension Without VM Support”. In Proceedings of the 8th Ph.d. Retreat of the HPI Research School on Service-Oriented Systems Engineering. Tech. rep. 95. Hasso Plattner Institute, 2015.

Felgentreff, Tim, ed. Proceedings of the 14th ACM SIGPLAN International Symposium on Dynamic Languages, DLS 2018, Boston, MA, USA, November 6, 2018. ACM, 2018. doi:10.1145/3276945https://doi.org/10.1145/3276945.

Tim Felgentreff. “Specifying Multi-Domain Constraints on Object-Behavior”. In Proceedings of the 7th Ph.d. Retreat of the HPI Research School on Service-Oriented Systems Engineering. Tech. rep. 83. Hasso Plattner Institute, 2014.

Tim Felgentreff. “The Design and Implementation of Object-Constraint Programming”. PhD thesis, University of Potsdam, Germany, 2017http://d-nb.info/1136085963.

Felgentreff, Tim, and Olivier Zendra, eds. Proceedings of the 13th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, [email protected] 2018, Amsterdam, Netherlands, July 16-21, 2018. ACM, 2018. doi:10.1145/3242947https://doi.org/10.1145/3242947.

Tim Felgentreff, Alan Borning, and Robert Hirschfeld. “Babelsberg: Specifying and Solving Constraints on Object Behavior”. Tech. rep. 2013-001. Viewpoints Research Institute, May 2013.

Tim Felgentreff, Alan Borning, and Robert Hirschfeld. “Specifying and Solving Constraints on Object Behavior”. Journal of Object Technology (JOT) 13, no. 4 (2014): 1–38. doi:10.5381/jot.2014.13.4.a1public/uni/FelgentreffJOT2014.pdf.

Tim Felgentreff, Alan Borning, Robert Hirschfeld, Jens Lincke, Yoshiki Ohshima, Bert Freudenberg, and Robert Krahn. “Babelsberg/JS: a Browser-Based Implementation of an Object Constraint Language”. In ECOOP, 411–36. Springer, 2014. doi:10.1007/978-3-662-44202-9_17public/uni/FelgentreffECOOP2014.pdf.

Tim Felgentreff, Robert Hirschfeld, Alan Borning, and Millstein Todd. “Babelsberg/RML: Executable Semantics and Language Testing with RML”. Tech. rep. 103. Hasso Plattner Institut, 2016.

Tim Felgentreff, Robert Hirschfeld, Maria Graber, Alan Borning, and Hidehiko Masuhara. “Declaring Constraints on Object-Oriented Collections”. Journal of Information Processing 24, no. 6 (2016): 917–27. doi:10.2197/ipsjjip.24.917public/uni/FelgentreffIPSJJIP2014.pdf.

Tim Felgentreff, Stefan Lehmann, Robert Hirschfeld, Sebastian Gerstenberg, Jakob Reschke, Lars Rückert, Patrick Siegler, Jan Graichen, Christian Nicolai, and Malte Swart. “Automatically Selecting and Optimizing Constraint Solver Procedures for Object-Constraint Languages”. In Constrained and Reactive Objects Workshop (CROW), 65–72. MODULARITY Companion 2016. ACM, 2016. doi:10.1145/2892664.2892671public/uni/FelgentreffCROW2016.pdf.

Tim Felgentreff, Jens Lincke, Robert Hirschfeld, and Lauritz Thamsen. “Lively Groups: Shared Behavior in a World of Objects Without Classes or Prototypes”. In Future Programming Workshop (FPW), 15–22. ACM, 2015. doi:10.1145/2846656.2846659public/uni/FelgentreffFPW2015.pdf.

Tim Felgentreff, Todd Millstein, and Alan Borning. “Developing a Formal Semantics for Babelsberg: a Step-by-Step Approach”. Tech. rep. 2014-002. Viewpoints Research Institute, September 2014.

Tim Felgentreff, Todd Millstein, Alan Borning, and Robert Hirschfeld. “Checks and Balances — Constraint Solving Without Surprises in Object-Constraint Programming Languages: Full Formal Development”. Tech. rep. 2015-001. Viewpoints Research Institute, 2015public/uni/FelgentreffVPRI2015.pdf.

Tim Felgentreff, Todd Millstein, Alan Borning, and Robert Hirschfeld. “Checks and Balances: Constraint Solving Without Surprises in Object-Constraint Programming Languages”. In Proceedings of the 2015 ACM International Conference on Object Oriented Programming Systems Languages & Applications, 771–86. OOPSLA’15. ACM, 2015. doi:10.1145/2814270.2814311public/uni/FelgentreffOOPSLA2015.pdf.

Tim Felgentreff, Fabio Niephaus, Tobias Pape, and Robert Hirschfeld. “When a Mouse Eats a Python: Smalltalk-Style Development for Python and Ruby”. In Workshop on Modern Language Runtimes, Ecosystems, and VMs (MoreVMs), 2017public/uni/FelgentreffMoreVMs2017.pdf.

Tim Felgentreff, Tobias Pape, Robert Hirschfeld, Anton Gulenko, and Carl Friedrich Bolz. “Language Independent Storage Strategies for Tracing JIT Based VMs”. In Proceedings of the 11th ACM Symposium on Dynamic Languages, 119–28. DLS ’15. ACM, 2015. doi:10.1145/2816707.2816716public/uni/PapeDLS2015.pdf.

Tim Felgentreff, Tobias Pape, Patrick Rein, and Robert Hirschfeld. “How to Build a High-Performance VM for Squeak/Smalltalk in Your Spare Time: an Experience Report of Using the RPython Toolchain”. In Proceedings of the 11th Edition of the International Workshop on Smalltalk Technologies, 21:1–21:10. IWST’16. ACM, 2016. doi:10.1145/2991041.2991062. Best Paper Awardpublic/uni/FelgentreffIWST2016.pdf.

Tim Felgentreff, Tobias Pape, Lars Wassermann, Robert Hirschfeld, and Carl Friedrich Bolz. “Towards Reducing the Need for Algorithmic Primitives in Dynamic Language VMs Through a Tracing JIT”. In Proceedings of the 10th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, 7:1–7:10. ICOOOLPS’15. ACM, 2015. doi:10.1145/2843915.2843924public/uni/FelgentreffICOOOLPS2015.pdf.

Tim Felgentreff, Michael Perscheid, and Robert Hirschfeld. “Constraining Timing-Dependent Communication for Debugging Non-Deterministic Failures”. In Proceedings of the Workshop on Academic Software Development Tools and Techniques. WASDeTT’13, 2013public/uni/FelgentreffWASDETT2013.pdf.

Tim Felgentreff, Michael Perscheid, and Robert Hirschfeld. “Implementing Record and Refinement for Debugging Timing-Dependent Communication”. Science of Computer Programming (SCICO) 134 (2017): 4–18. doi:10.1016/j.scico.2015.11.006public/uni/FelgentreffSCICO2017.pdf.

Bert Freudenberg, Dan H.H. Ingalls, Tim Felgentreff, Tobias Pape, and Robert Hirschfeld. “SqueakJS: a Modern and Practical Smalltalk That Runs in Any Browser”. In Proceedings of the 10th ACM Symposium on Dynamic Languages, 57–66. DLS ’14. ACM, 2014. doi:10.1145/2661088.2661100public/uni/FreudenbergDLS2014.pdf.

Maria Graber, Tim Felgentreff, Robert Hirschfeld, and Alan Borning. “Solving Interactive Logic Puzzles with Object-Constraints — an Experience Report Using Babelsberg/S for Squeak/Smalltalk”. In Workshop on Reactive and Event-Based Languages & Systems (REBLS), 2014public/uni/GraberREBLS2014.pdf.

Johannes Henning, Tim Felgentreff, and Robert Hirschfeld. “VM Wrapping: Fake It till You Make It”. In Proceedings of the 12th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, [email protected] 2017, Barcelona, Spain, June 19, 2017, 2:1–:4, 2017. doi:10.1145/3098572.3098576https://doi.org/10.1145/3098572.3098576.

Eva-Maria Herbst, Fabian Maschler, Fabio Niephaus, Max Reimann, Julia Steier, Tim Felgentreff, Jens Lincke, Marcel Taeumel, Robert Hirschfeld, and Carsten Witt. “EcoControl: Entwurf Und Implementierung Einer Software Zur Optimierung Heterogener Energiesysteme in Mehrfamilienhäusern”. Tech. rep. 93. Hasso Plattner Institute, 2015.

Robert Hirschfeld, Hidehiko Masuhara, Atsushi Igarashi, and Tim Felgentreff. “Visibility of Context-Oriented Behavior and State in L”. Journal of the Japan Society for Software Science and Technology (JJSSST) 32, no. 3 (2015): 149–59public/uni/HirschfeldJJSSST2014.pdf.

Robert Hirschfeld, Hidehiko Masuhara, Atsushi Igarashi, and Tim Felgentreff. “Visibility of Context-Oriented Behavior and State in L”. In Proceedings of Japan Society for Software Science and Technology Annual Conference. JSSST’14. Nagoya, Aichi-ken, Japan, 2014.

Daniel Ingalls, Tim Felgentreff, Robert Hirschfeld, Robert Krahn, Jens Lincke, Marko Röder, Antero Taivalsaari, and Tommi Mikkonen. “A World of Active Objects for Work and Play: the First Ten Years of Lively”. In Proceedings of the 2016 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software, 238–49. Onward! 2016. ACM, 2016. doi:10.1145/2986012.2986029public/uni/IngallsONWARD2016.pdf.

Bastian Kruck, Stefan Lehmann, Christoph Kessler, Jakob Reschke, Tim Felgentreff, Jens Lincke, and Robert Hirschfeld. “Multi-Level Debugging for Interpreter Developers”. In Workshop on Language Modularity a La Mode (LaMOD), 91–93. MODULARITY Companion 2016. ACM, 2016. doi:10.1145/2892664.2892679public/uni/KruckLAMOD2016.pdf.

Bastian Kruck, Tobias Pape, Tim Felgentreff, and Robert Hirschfeld. “Crossing Abstraction Barriers When Debugging in Dynamic Languages”. In Proceedings of the Symposium on Applied Computing, 1498–1504. SAC’17. ACM, 2017. doi:10.1145/3019612.3019734public/uni/KruckSAC2017.pdf.

Stefan Lehmann, Tim Felgentreff, and Robert Hirschfeld. “Connecting Object Constraints with Context-Oriented Programming: Scoping Constraints with Layers and Activating Layers with Constraints”. In Proceedings of the 7th International Workshop on Context-Oriented Programming, 1–6. COP’15. ACM, 2015. doi:10.1145/2786545.2786549public/uni/LehmannCOP2015.pdf.

Stefan Lehmann, Tim Felgentreff, Jens Lincke, Patrick Rein, and Robert Hirschfeld. “Reactive Object Queries”. In Constrained and Reactive Objects Workshop (CROW), 23–28. MODULARITY Companion 2016. ACM, 2016. doi:10.1145/2892664.2892665public/uni/LehmannCROW2016.pdf.

Jens Lincke, Patrick Rein, Stefan Ramson, Robert Hirschfeld, Marcel Taeumel, and Tim Felgentreff. “Designing a Live Development Experience for Web-Components”. In Proceedings of the 3rd ACM SIGPLAN International Workshop on Programming Experience, PX/17.2, Vancouver, BC, Canada, October 23-27, 2017, 28–35, 2017https://dl.acm.org/citation.cfm?id=3167109.

Fabio Niephaus, Tim Felgentreff, and Robert Hirschfeld. “GraalSqueak: A Fast Smalltalk Bytecode Interpreter Written in an AST Interpreter Framework”. In Proceedings of the 13th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, [email protected] 2018, Amsterdam, Netherlands, July 16-21, 2018, edited by Tim Felgentreff and Olivier Zendra, 30–35. ACM, 2018. doi:10.1145/3242947.3242948https://doi.org/10.1145/3242947.3242948.

Fabio Niephaus, Tim Felgentreff, Tobias Pape, and Robert Hirschfeld. “Squeak Makes a Good Python Debugger”. In Programming Experience 2017 (PX/17) Workshop. ACM, 2017public/uni/NiephausPX2017.pdf.

Fabio Niephaus, Tim Felgentreff, Tobias Pape, Robert Hirschfeld, and Marcel Taeumel. “Live Multi-Language Development and Runtime Environments”. CoRR abs/1803.10200 (2018)http://arxiv.org/abs/1803.10200.

Fabio Niephaus, Tim Felgentreff, Tobias Pape, Robert Hirschfeld, and Marcel Taeumel. “Live Multi-Language Development and Runtime Environments”. Programming Journal 2, no. 3 (2018): 8. doi:10.22152/programming-journal.org/2018/2/8https://doi.org/10.22152/programming-journal.org/2018/2/8.

Fabio Niephaus, Dale Henrichs, Marcel Taeumel, Tobias Pape, Tim Felgentreff, and Robert Hirschfeld. “SmalltalkCI: a Continuous Integration Framework for Smalltalk Projects”. In Proceedings of the 11th Edition of the International Workshop on Smalltalk Technologies, 1–9. IWST’16. ACM, 2016. doi:10.1145/2991041.2991044public/uni/NiephausIWST2016.pdf.

Fabio Niephaus, Matthias Springer, Tim Felgentreff, Tobias Pape, and Robert Hirschfeld. “Call-Target-Specific Method Arguments”. In Proceedings of the 10th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, 5:1–:4. ICOOOLPS’15. ACM, 2015. doi:10.1145/2843915.2843919public/uni/NiephausICOOOLPS2015.pdf.

Tobias Pape, Tim Felgentreff, and Robert Hirschfeld. “Optimizing Sideways Composition: Fast Context-Oriented Programming in ContextPyPy”. In Proceedings of the 8th International Workshop on Context-Oriented Programming, 13–20. COP’16. ACM, 2016. doi:10.1145/2951965.2951967public/uni/PapeCOP2016.pdf.

Michael Perscheid, Tim Felgentreff, and Robert Hirschfeld. “Follow the Path: Debugging State Anomalies Along Execution Histories”. In Software Maintenance, Reengineering and Reverse Engineering (CSMR-WCRE), 2014 Software Evolution Week - IEEE Conference on, 124–33. IEEE, 2014. doi:10.1109/CSMR-WCRE.2014.6747162public/uni/PerscheidWCRE2014.pdf.

Patrick Rein, Stefan Ramson, Jens Lincke, Tim Felgentreff, and Robert Hirschfeld. “Group-Based Behavior Adaptation Mechanisms in Object-Oriented Systems”. IEEE Software 34, no. 6 (2017): 78–82. doi:10.1109/MS.2017.4121224https://doi.org/10.1109/MS.2017.4121224.

Bastian Steinert, Lauritz Thamsen, Tim Felgentreff, and Robert Hirschfeld. “Object Versioning to Support Recovery Needs: Using Proxies to Preserve Previous Development States in Lively”. In Proceedings of the 10th ACM Symposium on Dynamic Languages, 113–24. DLS ’14. ACM, 2014. doi:10.1145/2661088.2661093public/uni/SteinertDLS2014.pdf.

Marcel Taeumel, Tim Felgentreff, and Robert Hirschfeld. “Applying Data-Driven Tool Development to Context-Oriented Languages”. In Proceedings of 6th International Workshop on Context-Oriented Programming, 1–7. COP’14. ACM, 2014. doi:10.1145/2637066.2637067public/uni/TaeumelCOP2014.pdf.

Philipp Tessenow, Tim Felgentreff, Gilad Bracha, and Robert Hirschfeld. “Extending a Dynamic Programming Language and Runtime With Access Control”. Tech. rep. 107. Hasso Plattner Institut, 2016.

Lars Wassermann, Tim Felgentreff, Tobias Pape, Carl Friedrich Bolz, and Robert Hirschfeld. “Tracing Algorithmic Primitives in RSqueak/VM”. Tech. rep. 104. Hasso Plattner Institut, 2016.

Christopher Weyand, Jonas Chromik, Lennard Wolf, Steffen Kötte, Konstantin Haase, Tim Felgentreff, Jens Lincke, and Robert Hirschfeld. “Improving Hosted Continuous Integration Services”. Tech. rep. 108. Hasso Plattner Institut, 2017.


  1. “Live Multi-Language Development and Runtime Environments,” CoRR abs/1803.10200 (2018), http://arxiv.org/abs/1803.10200.

  2. Proceedings of the 14th ACM SIGPLAN International Symposium on Dynamic Languages, DLS 2018, Boston, MA, USA, November 6, 2018 (ACM, 2018), doi:10.1145/3276945https://doi.org/10.1145/3276945.

  3. Proceedings of the 13th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, [email protected] 2018, Amsterdam, Netherlands, July 16-21, 2018 (ACM, 2018), doi:10.1145/3242947https://doi.org/10.1145/3242947.

  4. “GraalSqueak: A Fast Smalltalk Bytecode Interpreter Written in an AST Interpreter Framework,” in Proceedings of the 13th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, [email protected] 2018, Amsterdam, Netherlands, July 16-21, 2018, ed. Tim Felgentreff and Olivier Zendra (ACM, 2018), 30–35, doi:10.1145/3242947.3242948https://doi.org/10.1145/3242947.3242948.

  5. “Live Multi-Language Development and Runtime Environments,” Programming Journal 2, no. 3 (2018): 8, doi:10.22152/programming-journal.org/2018/2/8https://doi.org/10.22152/programming-journal.org/2018/2/8.

  6. “Crossing Abstraction Barriers When Debugging in Dynamic Languages,” in Proceedings of the Symposium on Applied Computing, SAC’17 (ACM, 2017), 1498–1504, doi:10.1145/3019612.3019734public/uni/KruckSAC2017.pdf.

  7. “When a Mouse Eats a Python: Smalltalk-Style Development for Python and Ruby,” in Workshop on Modern Language Runtimes, Ecosystems, and VMs (MoreVMs), 2017, public/uni/FelgentreffMoreVMs2017.pdf.

  8. “Sista: Saving Optimized Code in Snapshots for Fast Start-up,” in Proceedings of the 14th International Conference on Managed Languages and Runtimes, ManLang 2017, Prague, Czech Republic, September 27 - 29, 2017, 2017, 1–11, doi:10.1145/3132190.3132201https://doi.org/10.1145/3132190.3132201.

  9. “Designing a Live Development Experience for Web-Components,” in Proceedings of the 3rd ACM SIGPLAN International Workshop on Programming Experience, PX/17.2, Vancouver, BC, Canada, October 23-27, 2017, 2017, 28–35, https://dl.acm.org/citation.cfm?id=3167109.

  10. “VM Wrapping: Fake It till You Make It,” in Proceedings of the 12th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, [email protected] 2017, Barcelona, Spain, June 19, 2017, 2017, 2:1–:4, doi:10.1145/3098572.3098576https://doi.org/10.1145/3098572.3098576.

  11. “Group-Based Behavior Adaptation Mechanisms in Object-Oriented Systems,” IEEE Software 34, no. 6 (2017): 78–82, doi:10.1109/MS.2017.4121224https://doi.org/10.1109/MS.2017.4121224.

  12. “Squeak Makes a Good Python Debugger,” in Programming Experience 2017 (PX/17) Workshop (ACM, 2017), public/uni/NiephausPX2017.pdf.

  13. “Implementing Record and Refinement for Debugging Timing-Dependent Communication,” Science of Computer Programming (SCICO) 134 (2017): 4–18, doi:10.1016/j.scico.2015.11.006public/uni/FelgentreffSCICO2017.pdf.

  14. “Improving Hosted Continuous Integration Services” (Hasso Plattner Institut, 2017).

  15. “The Design and Implementation of Object-Constraint Programming” (PhD thesis, University of Potsdam, Germany, 2017), http://d-nb.info/1136085963.

  16. “Checks and Balances: Object-Constraints Without Surprises,” in Proceedings of the 9th Ph.d. Retreat of the HPI Research School on Service-Oriented Systems Engineering, Tech. rep. 100 (Hasso Plattner Institute, 2016).

  17. “Declaring Constraints on Object-Oriented Collections,” Journal of Information Processing 24, no. 6 (2016): 917–27, doi:10.2197/ipsjjip.24.917public/uni/FelgentreffIPSJJIP2014.pdf.

  18. “A World of Active Objects for Work and Play: the First Ten Years of Lively,” in Proceedings of the 2016 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software, Onward! 2016 (ACM, 2016), 238–49, doi:10.1145/2986012.2986029public/uni/IngallsONWARD2016.pdf.

  19. “SmalltalkCI: a Continuous Integration Framework for Smalltalk Projects,” in Proceedings of the 11th Edition of the International Workshop on Smalltalk Technologies, IWST’16 (ACM, 2016), 1–9, doi:10.1145/2991041.2991044public/uni/NiephausIWST2016.pdf.

  20. “How to Build a High-Performance VM for Squeak/Smalltalk in Your Spare Time: an Experience Report of Using the RPython Toolchain,” in Proceedings of the 11th Edition of the International Workshop on Smalltalk Technologies, IWST’16 (ACM, 2016), 21:1–21:10, doi:10.1145/2991041.2991062public/uni/FelgentreffIWST2016.pdf.

  21. “Optimizing Sideways Composition: Fast Context-Oriented Programming in ContextPyPy,” in Proceedings of the 8th International Workshop on Context-Oriented Programming, COP’16 (ACM, 2016), 13–20, doi:10.1145/2951965.2951967public/uni/PapeCOP2016.pdf.

  22. “Reactive Object Queries,” in Constrained and Reactive Objects Workshop (CROW), MODULARITY Companion 2016 (ACM, 2016), 23–28, doi:10.1145/2892664.2892665public/uni/LehmannCROW2016.pdf.

  23. “Multi-Level Debugging for Interpreter Developers,” in Workshop on Language Modularity a La Mode (LaMOD), MODULARITY Companion 2016 (ACM, 2016), 91–93, doi:10.1145/2892664.2892679public/uni/KruckLAMOD2016.pdf.

  24. “Automatically Selecting and Optimizing Constraint Solver Procedures for Object-Constraint Languages,” in Constrained and Reactive Objects Workshop (CROW), MODULARITY Companion 2016 (ACM, 2016), 65–72, doi:10.1145/2892664.2892671public/uni/FelgentreffCROW2016.pdf.

  25. “Extending a Dynamic Programming Language and Runtime With Access Control” (Hasso Plattner Institut, 2016).

  26. “Tracing Algorithmic Primitives in RSqueak/VM” (Hasso Plattner Institut, 2016).

  27. “Babelsberg/RML: Executable Semantics and Language Testing with RML” (Hasso Plattner Institut, 2016).

  28. “Implementing an Object-Constraint Extension Without VM Support,” in Proceedings of the 8th Ph.d. Retreat of the HPI Research School on Service-Oriented Systems Engineering, Tech. rep. 95 (Hasso Plattner Institute, 2015).

  29. “EcoControl: Entwurf Und Implementierung Einer Software Zur Optimierung Heterogener Energiesysteme in Mehrfamilienhäusern” (Hasso Plattner Institute, 2015).

  30. “Visibility of Context-Oriented Behavior and State in L,” Journal of the Japan Society for Software Science and Technology (JJSSST) 32, no. 3 (2015): 149–59, public/uni/HirschfeldJJSSST2014.pdf.

  31. “Language Independent Storage Strategies for Tracing JIT Based VMs,” in Proceedings of the 11th ACM Symposium on Dynamic Languages, DLS ’15 (ACM, 2015), 119–28, doi:10.1145/2816707.2816716public/uni/PapeDLS2015.pdf.

  32. “Checks and Balances — Constraint Solving Without Surprises in Object-Constraint Programming Languages: Full Formal Development” (Viewpoints Research Institute, 2015), public/uni/FelgentreffVPRI2015.pdf.

  33. “Checks and Balances: Constraint Solving Without Surprises in Object-Constraint Programming Languages,” in Proceedings of the 2015 ACM International Conference on Object Oriented Programming Systems Languages & Applications, OOPSLA’15 (ACM, 2015), 771–86, doi:10.1145/2814270.2814311public/uni/FelgentreffOOPSLA2015.pdf.

  34. “Call-Target-Specific Method Arguments,” in Proceedings of the 10th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, ICOOOLPS’15 (ACM, 2015), 5:1–:4, doi:10.1145/2843915.2843919public/uni/NiephausICOOOLPS2015.pdf.

  35. “Towards Reducing the Need for Algorithmic Primitives in Dynamic Language VMs Through a Tracing JIT,” in Proceedings of the 10th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, ICOOOLPS’15 (ACM, 2015), 7:1–7:10, doi:10.1145/2843915.2843924public/uni/FelgentreffICOOOLPS2015.pdf.

  36. “Connecting Object Constraints with Context-Oriented Programming: Scoping Constraints with Layers and Activating Layers with Constraints,” in Proceedings of the 7th International Workshop on Context-Oriented Programming, COP’15 (ACM, 2015), 1–6, doi:10.1145/2786545.2786549public/uni/LehmannCOP2015.pdf.

  37. “Lively Groups: Shared Behavior in a World of Objects Without Classes or Prototypes,” in Future Programming Workshop (FPW) (ACM, 2015), 15–22, doi:10.1145/2846656.2846659public/uni/FelgentreffFPW2015.pdf.

  38. “Specifying Multi-Domain Constraints on Object-Behavior,” in Proceedings of the 7th Ph.d. Retreat of the HPI Research School on Service-Oriented Systems Engineering, Tech. rep. 83 (Hasso Plattner Institute, 2014).

  39. “Solving Interactive Logic Puzzles with Object-Constraints — an Experience Report Using Babelsberg/S for Squeak/Smalltalk,” in Workshop on Reactive and Event-Based Languages & Systems (REBLS), 2014, public/uni/GraberREBLS2014.pdf.

  40. “Follow the Path: Debugging State Anomalies Along Execution Histories,” in Software Maintenance, Reengineering and Reverse Engineering (CSMR-WCRE), 2014 Software Evolution Week - IEEE Conference on (IEEE, 2014), 124–33, doi:10.1109/CSMR-WCRE.2014.6747162public/uni/PerscheidWCRE2014.pdf.

  41. “Babelsberg/JS: a Browser-Based Implementation of an Object Constraint Language,” in ECOOP (Springer, 2014), 411–36, doi:10.1007/978-3-662-44202-9_17public/uni/FelgentreffECOOP2014.pdf.

  42. “Developing a Formal Semantics for Babelsberg: a Step-by-Step Approach” (Viewpoints Research Institute, September 2014).

  43. “Specifying and Solving Constraints on Object Behavior,” Journal of Object Technology (JOT) 13, no. 4 (2014): 1–38, doi:10.5381/jot.2014.13.4.a1public/uni/FelgentreffJOT2014.pdf.

  44. “Visibility of Context-Oriented Behavior and State in L,” in Proceedings of Japan Society for Software Science and Technology Annual Conference, JSSST’14 (Nagoya, Aichi-ken, Japan, 2014).

  45. “Applying Data-Driven Tool Development to Context-Oriented Languages,” in Proceedings of 6th International Workshop on Context-Oriented Programming, COP’14 (ACM, 2014), 1–7, doi:10.1145/2637066.2637067public/uni/TaeumelCOP2014.pdf.

  46. “Object Versioning to Support Recovery Needs: Using Proxies to Preserve Previous Development States in Lively,” in Proceedings of the 10th ACM Symposium on Dynamic Languages, DLS ’14 (ACM, 2014), 113–24, doi:10.1145/2661088.2661093public/uni/SteinertDLS2014.pdf.

  47. “SqueakJS: a Modern and Practical Smalltalk That Runs in Any Browser,” in Proceedings of the 10th ACM Symposium on Dynamic Languages, DLS ’14 (ACM, 2014), 57–66, doi:10.1145/2661088.2661100public/uni/FreudenbergDLS2014.pdf.

  48. “Babelsberg: Specifying and Solving Constraints on Object Behavior” (Viewpoints Research Institute, May 2013).

  49. “Constraining Timing-Dependent Communication for Debugging Non-Deterministic Failures,” in Proceedings of the Workshop on Academic Software Development Tools and Techniques, WASDeTT’13, 2013, public/uni/FelgentreffWASDETT2013.pdf.