Are you an EPFL student looking for a semester project?
Work with us on data science and visualisation projects, and deploy your project as an app on top of Graph Search.
Scala 3 provides a metaprogramming interface that represents the abstract syntax tree definitions using algebraic data types. To allow the compiler to freely evolve without breaking the metaprogramming interface, we present virtual algebraic data types (or Virtual ADTs) - a programming pattern, which allows programmers to describe mutually recursive hierarchies of types without coupling to a particular runtime representation.
Martin Jaggi, Mary-Anne Hartley, Vinitra Swamy, Jibril Albachir Frej, Thierry Bossy, Thijs Vogels, Malika Satayeva
Martin Odersky, Aleksander Slawomir Boruch-Gruszecki, Ondrej Lhoták