Language-Parametric Semantic Editor Services based on Declarative Type System Specifications
New programming languages often lack good IDE support, as developing advanced semantic editor services takes additional effort. In previous work we discussed the operational requirements of a constraint solver that leverages the declarative type system specification of a language to provide language-parametric semantic code completion, refactorings, and other semantic editor services. In this work we set out our ideas for the implementation of the solver, and describe its two-stage process: inference and search. An editor-service specific search strategy determines how and where the search is conducted, and when the search terminates. The search results are presented to the user, for example as semantic code completion proposals. We are currently implementing and evaluating this idea.