According to this question, Scala\'s type system is Turing complete. What resources are available that enable a newcomer to take advantage of the power of type-level program
In addition to the other links here, there are also my blog posts on type level meta programming in Scala: