🤖 AI Summary
To address the opacity of code semantics in AI-assisted programming—hindering visual inspection and formal verification—this paper proposes a DSL-driven multimodal interaction framework. It anchors program semantics in a domain-specific language (e.g., Lingua Franca), integrates natural language and speech input, and constructs interpretable, visual program models. Real-time graphical rendering and staged refinement enable dynamic traceability throughout code generation. Model checking is embedded to ensure semantic consistency via formal verification. Implemented as a VS Code extension prototype, the framework maintains high code-generation quality while significantly enhancing developers’ understanding of and trust in AI behavior. The core contribution lies in the deep synergy among DSL-based modeling, multimodal interaction, and formal verification—achieving, for the first time in an IDE-integrated tool, a closed-loop workflow wherein AI-generated code is both semantically visualized and formally verifiable.
📝 Abstract
AI-assisted programming greatly increases software development performance. We enhance this potential by integrating transparency through domain-specific modeling techniques and providing instantaneous, graphical visualizations that accurately represent the semantics of AI-generated code. This approach facilitates visual inspection and formal verification, such as model checking.
Formal models can be developed using programming, natural language prompts, voice commands, and stage-wise refinement, with immediate feedback after each transformation step. This support can be tailored to specific domains or intended purposes, improving both code generation and subsequent validation processes.
To demonstrate the effectiveness of this approach, we have developed a prototype as a Visual Studio Code extension for the Lingua Franca language. This prototype showcases the potential for novel domain-specific modeling practices, offering an advancement in how models are created, visualized, and verified.