An Architectural Approach to Fast Cross-Language Navigation of Related Entities in Software Projects


An Architectural Approach to Fast Cross-Language Navigation of Related Entities in Software Projects

Drozdov D.S. (SFEDU, Rostov-on-Don, Russia)
Mikhalkovich S.S. (SFEDU, Rostov-on-Don, Russia)

Abstract

The paper describes an architectural approach to fast cross-language navigation in polyglot software projects. The core idea is to maintain an explicit, durable project markup, link language-level anchors and enable constant-time jumps between related locations. The approach has been instantiated for the GraphQL–Go pair. Lightweight parsers with three fine-grained grammars for Go (covering regular calls, anonymous calls, and control-flow constructs) have been used for automatic identification of non-trivial resolvers. These resolvers have been defined as a key part of code markup. The advantages of using lightweight grammars have been shown. We have implemented a matching algorithm ranking candidate Go methods for each GraphQL field by combining naming conventions with static code features. We have calculated hit@1 and MRR to assess the quality of the ranked candidate lists. Multiple open-source repositories have been used to validate the grammars and the matching algorithm and to conduct user-oriented evaluation. On the evaluated projects, the tool consistently delivers an approximate 8x speed-up. Beyond speed, we observe no repeated file visits and improved selection accuracy when compared to manual search.

Keywords

ast navigation; cross-language navigation; polyglot projects; project markup; lightweight grammars.

Edition

Proceedings of the Institute for System Programming, vol. 38, issue 3, part 2, 2026, pp. 111-132

ISSN 2220-6426 (Online), ISSN 2079-8156 (Print).

DOI: 10.15514/ISPRAS-2026-38(3)-24

For citation

Drozdov D.S., Mikhalkovich S.S. An Architectural Approach to Fast Cross-Language Navigation of Related Entities in Software Projects. Proceedings of the Institute for System Programming, vol. 38, issue 3, part 2, 2026, pp. 111-132 DOI: 10.15514/ISPRAS-2026-38(3)-24.

Full text of the paper in pdf (in Russian) Back to the contents of the volume