Research group

Machine Learning Methods in Software Engineering



Reflekt is a compile-time reflection library that leverages flows of the standard reflection approach.

Instead of relying on JVM reflection, Reflekt would perform compile-time resolution of reflection queries using Kotlin compiler analysis. While this approach, in general, is not always applicable for most cases, Reflekt is capable of providing a convenient reflection API without actually using reflection.

Reflekt is a joint project of JetBrains Research and the Kotless team. The main reason for its creation was the need for GraalVM support in modern Java applications, especially on Serverless workloads. With the help of the Reflekt project, Kotless will be able to provide access to GraalVM to users of historically reflection-based frameworks such as Spring or their own Kotless DSL.



Reflekt: a Library for Compile-Time Reflection in Kotlin

May 2022

Anastasiia Birillo, Elena Lyulina, Maria Malysheva, Vladislav Tankov, and Timofey Bryksin

Read more