Large Language Models and Language Server Protocol: a match made in context

📅 2026-09-02
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
该文介绍了一种使用大型语言模型辅助开发静态验证软件的工具Eiffel-tools,通过与语言服务器协议结合,并利用形式化验证器提高代码生成和修正的准确性。
📝 Abstract
This article introduces Eiffel-tools, a language server protocol (LSP) implementation for the Eiffel programming language that uses Large Language Models (LLMs) to aid the development of statically verified software. The tool provides various interactive and non-interactive commands to produce code and specifications. It uses language and project specific knowledge to precisely direct the LLM and verifies the output using a static verifier. It crafts rich programmatic prompts for the input and corrects or rejects the output. Furthermore, it handles the retries until the program passes verification. The tool's bug fixing capability is evaluated on 2 public datasets using 3 models. The tool can fix 76% to 95% of bugs by combining LLMs and a formal verifier depending on the model and prompts used. The results show the trade-off between the number of fixing attempts and the success rate.
Problem

Research questions and friction points this paper is trying to address.

Large Language Models
Language Server Protocol
Static Verification
Eiffel Programming Language
Bug Fixing
Innovation

Methods, ideas, or system contributions that make the work stand out.

Large Language Models
Language Server Protocol
Static Verification
Programmatic Prompts
Bug Fixing
A
Alessandro Schena
Constructor Institute of Technology, Schaffhausen, Switzerland
Ilgiz Mustafin
Ilgiz Mustafin
Constructor Institute of Technology
J
Julia Kotovich
Constructor Institute of Technology, Schaffhausen, Switzerland