A Deep Dive into Scala Native Internals
summary
Scala Native compiles Scala ahead-of-time to machine code by converting Scala ASTs into a custom NIR intermediate representation, running a linker that performs reachability pruning, then an optimizer (including partial escape analysis and polymorphic inlining) and lowering to LLVM IR which clang/llvm compiles; it already cross-builds for Scala 2.12 and 2.13, ships multiple GC options and the interflow optimizer, and is actively working on multithreading support and a Scala 3 frontend.
AI-written summary · about
chapters (7)
- 0:00Introduction to Scala Native
- 1:38Project goals and background
- 6:02Native Intermediate Representation
- 13:59Compiler pipeline stages
- 22:39Linking and optimization
- 29:01Code generation and backend
- 33:16Future goals and roadmap
related talks
49mStarting from Scratch with Scala Native
36mHands-on Scala-Native
29mA brief introduction to systems programming, with Scala Native
41mLessons to Scala Native from Kotlin Native
30mExploring JVM Innovations Through the Lens of Scala Native
27mScala and C – tight as brothers
45mStarting from Scratch with Scala Native
35mScala 2.12 & Beyond
