mateuszkubuszok / hearth   0.1.0

Apache License 2.0 Website GitHub

The first Scala macros' standard library.

Scala versions: 3.x 2.13
Scala.js versions: 1.x
Scala Native versions: 0.5

Hearth logo

Hearth

CI build License Join the discussions at https://github.com/MateuszKubuszok/hearth/discussions

The first Scala macros' standard library.

Goals:

  • being able to build the code with Types, Exprs and high-level utilities that operate on them - limitting the need for AST and Symbols manipulation
  • cross-compilable API, allowing reuse of the macro code for both Scala 2 and Scala 3
  • exhaustive documentation lowering the barrier of entry
  • no dependencies on additional ecosystems (some FP-utilities are already provided!)

Call for Feedback

Hearth is an evolution of the chimney-macro-commons idea, but one that could serve not only the Chimney but also any other library that uses macros.

The current version does not yet have all planned features, and we'd like to hear from you is the current API good enough or what to change.

Please, take a look at Roadmap and Productisation for more infomation what is in the scope for 0.1.0 release and further.

Contribution

If you want to help get this library out of the door then, first, thank you!, and second, please see CONTRIBUTING.md.