Skip to Main content Skip to Navigation
Conference papers

IDE as Code: Reifying Language Protocols as First-Class Citizens

Pierre Jeanjean 1 Benoit Combemale 1 Olivier Barais 1
1 DiverSe - Diversity-centric Software Engineering
Inria Rennes – Bretagne Atlantique , IRISA-D4 - LANGAGE ET GÉNIE LOGICIEL
Abstract : To cope with the ever-growing number of programming languages, manufacturers of Integrated Development Environments (IDE) have recently defined protocols as a way to use and share multiple language services (e.g., auto-completion, type checker, language runtime) in language-agnostic environments (i.e., the user interface provided by the IDE): the most notable are the Language Server Protocol (LSP) for textual editors, and the Debug Adapter Protocol (DAP) for debugging facilities. These protocols rely on a proper specification of the services that are commonly found in the tool support of general-purpose languages, and define a fixed set of capabilities to offer in the IDE. However, new languages appear regularly offering unique constructs (e.g., Domain-Specific Languages), and supported by dedicated services to be offered as new capabilities in IDEs. This trend leads to the multiplication of new protocols, hard to combine and possibly incompatible (e.g., overlap, different technological stacks). Beyond the proposition of specific protocols, the goal of this paper is to stress out the importance of being able to specify language protocols and to offer IDEs to be configured with such protocol specifications. We present our vision by discussing the main concepts for the specification of language protocols, and an approach that can make use of these specifications in order to deploy an IDE as a set of coordinated, individually deployed, language capabilities (e.g., microservice choreography). IDEs went from directly supporting languages to protocols, and we envision in this paper the next step: IDE as Code, where language protocols are created or inferred on demand and serve as support of an adaptation loop taking in charge of the (re)configuration of the IDE.
Document type :
Conference papers
Complete list of metadata

https://hal.inria.fr/hal-03107122
Contributor : Pierre Jeanjean Connect in order to contact the contributor
Submitted on : Tuesday, January 12, 2021 - 1:14:35 PM
Last modification on : Tuesday, October 19, 2021 - 11:04:35 AM
Long-term archiving on: : Tuesday, April 13, 2021 - 6:32:31 PM

File

output.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-03107122, version 1

Citation

Pierre Jeanjean, Benoit Combemale, Olivier Barais. IDE as Code: Reifying Language Protocols as First-Class Citizens. ISEC 2021 - Innovations in Software Engineering Conference, Feb 2021, Bhubaneswar / Virtual, India. pp.1-5. ⟨hal-03107122⟩

Share

Metrics

Record views

260

Files downloads

380