Skip to content

Instantly share code, notes, and snippets.

View ArulselvanMadhavan's full-sized avatar

Arulselvan Madhavan ArulselvanMadhavan

  • San Francisco, CA
View GitHub Profile
@ArulselvanMadhavan
ArulselvanMadhavan / trampolineExample.scala
Created June 12, 2020 19:19
TrampolineExample - Scala
import scala.annotation.tailrec
object FreeRunar {
sealed trait Free[S[+_], +A] {
def map[B](f: A => B): Free[S, B] =
flatMap(x => Done(f(x)))
def flatMap[B](f: A => Free[S, B]): Free[S, B] =
this match {