Thanks to @kotlinweekly for posting my #kotlin #compiler article on K1 + K2 Frontends, Backends! #crashcoursekotlinc
#kotlin #compiler #crashcoursekotlinc
Crash Course on the Kotlin Compiler - Quick detour: K1 + K2 frontends, backends, and data transformations #kotlin #compiler #crashcoursekotlinc
#kotlin #compiler #crashcoursekotlinc
Well, I've been sitting on part 2 of the Kotlin Compiler article forever, mostly due to the nature of the review comments for discussing the differences between K1 and K2.
To be able to continue writing on resolution in a cleaner manner, I've decided to pull that discussion out into a quick detour - watch for tomorrow's release of "Crash Course on the Kotlin Compiler | K1 + K2 Frontends, Backends"!
#kotlin #compiler #crashcoursekotlinc
Thanks for coming to my #kotlinconf talk! Slides for "Crash Course on the #Kotlin #compiler is out now on speakerdeck:
https://speakerdeck.com/amanda_hinchman/crash-course-on-the-kotlin-compiler-kotlinconf-2023
#KotlinConf #kotlin #compiler #crashcoursekotlinc
Rendered PSI Visualizer.
:render-psi:testData:
arrayAssignment.kt shows augmented code with visual analysis recognizing types of declarations.
#kotlin #compiler #crashcoursekotlinc
Let's take a look at how `./gradlew generateTests` transforms the following code file to FIR and IR formats. The original code:
#kotlin #compiler #crashcoursekotlinc
The FIR frontend, otherwise known as k2 frontend for the Kotlin compiler. Not pictured is the first form as an AST tree before PSI.
Changes added as a new branch: https://github.com/ahinchman1/Kotlin-Compiler-Crash-Course/tree/add_k2_documentation
#kotlin #compiler #crashcoursekotlinc
Just realized that my #compiler diagrams have been a depiction of K1 frontend the entire time 🤦 time to make updates
#compiler #kotlin #crashcoursekotlinc