Skip to content

Instantly share code, notes, and snippets.

Keybase proof

I hereby claim:

  • I am jmccance on github.
  • I am jmccance (https://keybase.io/jmccance) on keybase.
  • I have a public key ASChjyd2Gnzghm-wPKqki7gaRF_cZHnHnmX5Ztuvw9nXwQo

To claim this, I am signing this object:

@jmccance
jmccance / Shapes.scala
Last active July 27, 2017 18:39
Deriving Show with Shapeless
package examples
import shapeless._
import shapeless.labelled.FieldType
// First we need a typeclass to demo shapeless with. This one just handles converting things
// to strings.
trait Show[A] {
def apply(a: A): String
}
@jmccance
jmccance / fizzbuzz.scala
Last active November 22, 2016 17:57
Monoidal Fizzbuzz in Scala
import scalaz._
import scalaz.Scalaz._
import scala.language.higherKinds
object Fizzbuzz extends App {
def nums = Stream.from(1).map(_.toString)
def every[A: Monoid](n: Int)(a: A): Stream[A] =
Stream.fill(n - 1)(Monoid[A].zero) ++ a #:: every(n)(a)
@jmccance
jmccance / ProofPoint.scala
Last active August 26, 2016 19:02
ProofPoint extraction
package net.jmccance.proofpoint
import scala.util.parsing.combinator._
object ProofPoint extends App {
object ProofPointParser extends RegexParsers {
def character: Parser[String] = """.""".r ^^ (_.toString)
def slash: Parser[String] = "_" ^^ (_ => "/")
def encodedCharacter: Parser[String] =
@jmccance
jmccance / greeting.scala
Last active January 12, 2016 18:06
Abstract overrides
trait Greeting {
def greeting: String
}
trait Greeter {
this: Greeting =>
def greet() = greeting
}
@jmccance
jmccance / collection_init.java
Last active February 26, 2016 19:23
Overcoming Immutability in Scala
final List<String> fullNames = new ArrayList<>();
for (Name name : names) {
fullNames.add(String.format("%s %s", name.getFirst(), name.getLast()));
}