Talking to Objects in Natural Language: Toward Semantic Tools for Exploratory Programming

Authors:
Christoph Thiede, Marcel Taeumel, Lukas Böhme, Robert Hirschfeld
Published:
In Onward! '24: 2024 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software. October 17, 2024.
Abstract:

In exploratory programming, programmers often face a semantic gap between their high-level understanding and the low-level interfaces available for interacting with objects in a system. That is, technical object structure and behavior need to be interpreted as abstract domain concepts, which then increases cognitive load and thus impedes exploration progress. We propose semantic object interfaces that bridge this gap by enabling contextual, natural-language conversations with objects. Our approach leverages an exploratory programming agent powered by a large language model (LLM) to translate natural-language questions into low-level experiments and provide high-level answers. We describe a framework for integrating semantic object interfaces into existing exploratory programming systems, including a prototype implementation in Squeak/Smalltalk using GPT-4o. We showcase the potential of semantic object interfaces through case studies and discuss their feasibility, limitations, and impact on the programming experience. While challenges remain, our approach promises to reduce mental effort and empower programmers to explore and understand systems at a higher level of abstraction for a better programming experience.

BibTeX:
@inproceedings{thiede2024,
  title = {{Talking to Objects in Natural Language: Toward Semantic Tools for Exploratory Programming}},
  author = {Christoph Thiede and Marcel Taeumel and Lukas Böhme and Robert Hirschfeld},
  booktitle = {Onward! '24: 2024 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software},
  year = 2024,
  doi = {10.1145/3689492.3690049},
}