Careers > Libadalang: Analyzing Rust sources with LKQL
Last modified 9/11/2026 2:54:20 PM

Libadalang: Analyzing Rust sources with LKQL

Internship
AdaCore
Paris, France

AdaCore: Helping Developers Build Software that Matters
Everything we do at AdaCore is centered around helping developers build safe, secure and reliable software.


For 30 years, we've partnered with global leaders in aerospace & defense, air traffic management, space, railway and financial services. We've developed tools and services simplifying high-integrity software development through a subscription-based model. As demand for secure applications grows in industries like automotive, medical, energy, and IoT, we're adapting our proven technologies to assist a new generation of developers.
Our +190 global experts based in the US, France, Germany, the UK, and Estonia, collectively develop cutting-edge technologies to address the challenges of high-grade software development.
Joining AdaCore is about joining a culture of innovation, openness, collaboration and dependability, which defines how we work together, with our customers and partners.

 

Context

Langkit Query Language (LKQL) is a language allowing its users to perform syntactic and semantic requests on a given code base, exploring the parse tree and performing “pattern matching” on syntactic nodes. It is used by GNATcheck, the Ada coding standard verification tool.


For now LKQL is only able to analyze Ada sources but we have the will to enhance it to allow users to use it on sources of other languages, in particular Rust.


Goals

This internship’s goal is to explore possibilities about providing a way to LKQL users to analyze Rust sources. The intern will have to investigate existing Rust analysis tools and consider plugging them to the LKQL engine. Another possibility would be to implement our own Rust analysis library with the Langkit framework.


The main goals of this internship will be:

  • Investigate existing libraries that provide support to analyze Rust sources
  • Try to plug them to the LKQL engine and map existing LKQL construct to their APIs
  • If the previous point isn’t achievable, investigate the feasibility of writing our own Rust analysis library

 

Skills required

  • A strong interest in compiler and language analysis technologies
  • Knowledge of the Java language
  • Some knowledge of the Rust language
  • A good adaptability


Nice to have

  • Some knowledge of the Ada language
  • Being autonomous


Timeframe & Location
During 2027 - 6 months - Paris office

 

Beyond the job


We're a global organization driven by diverse backgrounds, fostering innovation through an open exchange of ideas. We welcome applicants of all backgrounds, celebrating diversity in ethnicity, nationality, gender, age, religion, abilities, sexual orientation, veteran or marital status. 
Our commitment is to help our teammates, wherever they are based, feel comfortable and satisfied, by encouraging flexibility to ensure them a healthy work-life balance. Additionally, we prioritize individual development by offering continuous training from day one with a personalized onboarding plan.

For more information about our recruitment process, visit our FAQ.

 

Powered by Hello Talent