This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package prestwood | |
// Examples of recursion scheme implementations using matroysha. Mostly they're not that useful, | |
// and I really only got three tricks down, but they're good tricks: | |
// 1. Collect information across an AST using a Writer monad | |
// 2. Modify AST nodes in place | |
// 3. Annotate AST nodes with arbitrary types | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package testfree | |
import testfree.Console._ | |
import testfree.Authorization.{ Authorize} | |
import scalaz.{Inject, _} | |
import Scalaz._ | |
import scala.io.StdIn | |
import scalaz.Inject._ | |
// Example of using two separate ADTs with separate interpreters and composing the interpeters. | |
// See talk by Runar Bjarnason https://www.youtube.com/watch?v=M258zVn4m2M, or "onion architecture" description |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
license: mit |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
license: mit |