Best resource to learn Scalia 3 metaprogramming

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

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • 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.

  • 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.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • 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