Training | Kotlin compiler plugins with Arrow-Meta

Writing a Kotlin compiler plugin is a tedious task due to the state of the public API. In this course, you will learn about the DSL Arrow-Meta provides for writing your own plugins.



Writing plugins for the Kotlin compiler can be a really tedious task given the current state of the compiler API. Compiler hooks are not as solid as they could be yet, so wiring our own compile time behaviors rapidly becomes a big pain. In this course, we will teach you how to use the power of Arrow-Meta and the DSL it brings to write your own compiler plugins. You will also learn about some key features the Arrow library provides thanks to Arrow-Meta.


  • Previous experience with Kotlin.
  • IntellIJ IDEA, JDK 8.

What you'll learn

  • Overview of the Kotlin compiler phases, what can we build with Meta.
  • How meta hooks its DSL so we can extend any of the phases.
  • Code generation and Kotlin AST rewriting.
  • The upcoming new compiler IR.
  • Compiler plugins & Ide plugins. Making both work together.
  • Enabling new syntax with Meta.
  • Building Ide features for compiler plugins.
  • Features Arrow-Meta enables like Union and Refined types, compile time dependency resolution, and more.
  • Quote system.
  • Writing tests for your plugins.
  • Utilize the seamless interoperability in Meta for Cli and Ide features alike. Simplifying, porting code or algorithms in your projects.
  • Reuse or Refine existing community plugins build with Meta for your use-cases.

Company and Private Group Training

Company and Private Group Training


This Kotlin Compiler Plugins with Arrow-Meta includes:

  • Maximum Class Size of 15
  • Access to Academy EduTools Platform
  • Access to Course Materials
  • Certificate of Completion
  • Access to a Private Channel with Trainers in the Academy Slack
  • A Q&A session one week post-course
  • A pre-and-post meeting with our trainers