It's Alive! What a Live Object Environment Changes in Software Engineering Practice
Open Access
- 12 April 2026
- conference paper
- Published by Association for Computing Machinery (ACM)
- p. 24-27
Abstract
Tools shape our mind. This is why it is important to have extensible and flexible tools for developers to adapt to their needs. Reasoning about programs in the abstract —by imagining what objects should look like— can make it harder to grasp the underlying model. In Smalltalk environments like Pharo, developers work closely with their objects, gaining immediate feedback - not guessing how they will look like but directly interacting with them. This article presents some tools developers use in Pharo: Inspector custom views for defining specific views and navigation for objects, Microcommits for reverting changes without the need to commit and pull, Xtreme TDD that allows developers to code in the debugger, On the Fly Rewriting Deprecations that support API evolution through automated rewriting of deprecated calls, and Object-Centric Breakpoints - when a problem cannot be efficiently solved with a dummy trace, developers can use break points that will only halt for a given instance. By showcasing these features that evolved alongside Smalltalk, we invite reflection on how other IDEs could rethink some of their features and improve developers’ workflows.Keywords
All Related Versions
Funding Information
- Agencia I+D+i (PICT-2019-02485)
This publication has 9 references indexed in Scilit:
- A new architecture reconciling refactorings and transformationsJournal of Computer Languages, 2024
- A VM-Agnostic and Backwards Compatible Protected Modifier for Dynamically-Typed LanguagesThe Art, Science, and Engineering of Programming, 2023
- Deprewriter: On the fly rewriting method deprecations.The Journal of Object Technology, 2022
- Preserving instance state during refactorings in live environmentsFuture Generation Computer Systems, 2020
- Proceedings of the 15th ACM SIGPLAN International Symposium on Dynamic Languages2019
- Live Programming and Software Evolution: Questions During a Programming Change Task2019
- The road to live programming2018
- On understanding how developers use the Spotter search tool2015
- The Moldable Debugger: A Framework for Developing Domain-Specific Debuggers2014