Definitional Compiler tools
dc10-core
: core models and abstractions for defining a language implementationdc10-io
: fs2 integration for evaluating metaprograms into source files
dc10-scala
: AST and dsl for defining and rendering Scala programs
- Library for Scala 3 (JS, JVM, and Native platforms)
- Bring your own AST, implement a
Renderer
, then compile toString
orFile
"com.julianpeeters" %% "dc10-core" % "0.5.1"
The dc10
package provides the following:
- A compiler implementation
- A file model, and a virtual file model
- A renderer interface (to be implemented by a downstream language library)
- Library for Scala 3 (JVM only)
- Bring your own AST, implement a
Renderer
"com.julianpeeters" %% "dc10-io" % "0.5.1"
The io
package provides the following:
- extension methods to write files using fs2 (provided)