Skip to content

Instantly share code, notes, and snippets.

View channingwalton's full-sized avatar
🏠
Working from home

Channing Walton channingwalton

🏠
Working from home
View GitHub Profile
@channingwalton
channingwalton / TypeClass.scala
Created May 8, 2012 20:39
Typeclass in the presence of subtypes
import scala.xml.NodeSeq
object RenderExample {
object Model {
trait Toy
case class Bike extends Toy
case class Train extends Toy
@channingwalton
channingwalton / gist:1613219
Created January 14, 2012 22:51
Variation on Miles's increasing seq, this is a decreasing seq
object Generics {
import shapeless.HList
import shapeless.Nat
import shapeless.Nat._
import shapeless._
trait <[A <: Nat, B <: Nat]
implicit def lt1[B <: Nat] = new <[_0, Succ[B]] {}
implicit def lt2[A <: Nat, B <: Nat](implicit lt: A < B) = new <[Succ[A], Succ[B]] {}
@channingwalton
channingwalton / gist:1552195
Created January 2, 2012 21:28
A little scalaz IO action
import scalaz._
import Scalaz._
import scalaz.effects._
import java.io._
/**
* Background reading:
* http://www.stackmob.com/2011/12/scalaz-post-part-2/
* http://blog.sigfpe.com/2007/11/io-monad-for-people-who-simply-dont.html