Best resource to learn Scalia 3 metaprogramming

This page summarizes the projects mentioned and recommended in the original post on /r/scala

InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. ducktape

    Automatic and customizable compile time transformations between similar case classes and sealed traits/enums, essentially a thing that glues your code. Scala 3 only. Or is it duct šŸ¤”

    I’m looking for small Scala 3 exclusive (mixing it with 2 makes much harder to distinguish) projects with use of metaprogramming where I can learn more and perhaps contribute. Ducktape (https://github.com/arainko/ducktape) is a great example. Any blog posts would be even better.

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. dotty

    The Scala 3 compiler, also known as Dotty.

    Then start playing with reflection API - I suggest having Quotes opened in your IDE, and documentation in your browser. Use showRaw to print expressions you constructed - it will help you understand how to build from ground up when you cannot build something using only expressions.

  4. zio-protoquill

    Quill for Scala 3

    Among Scala 3-only macro codebases is proto-quill (Quill for Scala 3). Other than that most libraries will be cross-compiled Scala 2 and Scala 3 because they have to cater to both long-time Scala 2 users as well as those who already migrated.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • `boundary/break`: do you use it ? what do you do with it ?

    3 projects | /r/scala | 12 Jun 2023
  • Iron updates: turning opaque types into value objects

    2 projects | /r/scala | 6 Jun 2023
  • About Scala-Native

    4 projects | /r/scala | 13 Apr 2023
  • I've started writing a book on Scala 3 Macros

    1 project | /r/scala | 17 Mar 2023
  • scala 3 does not have :javap. Does anyone have any tips how to get around this.

    2 projects | /r/scala | 22 Feb 2023

Did you know that Scala is
the 36th most popular programming language
based on number of references?