Skip to content

Instantly share code, notes, and snippets.


fmc franklinchou

View GitHub Profile
franklinchou / try.scala
Created Oct 31, 2017
Getting try/catch to work in Scala
View try.scala
import java.time.LocalDate
import java.time.TemporalAdjusters
import scala.util.{Success, Failure, Try}
import org.scalatest.FunSpec
* Check if date passed is the last day of the month.
"Write a program that prints the numbers from 1 to 100. But for multiples of three print "Fizz" instead of
the number and for the multiples of five print "Buzz". For numbers which are multiples of both three and five
print "FizzBuzz".
if __name__ == "__main__":
for index in range(1, 100 + 1):
if (index % 3 == 0):
franklinchou /
Created Jul 8, 2018
Example of "bubble up" recursion
def traverse_backward():
def recurse(i):
if i == 0:
recurse(i - 1)
def traverse_forward():

Scala: Type Families, Sealed Traits, and Exhaustive Pattern Matching

By: Matt Barackman

What is a Type Family?

A collection of objects or case classes that share a sealed trait.

In the example below, the type family would be a collection of traffic light colors with Red, Yellow, and Green as member objects.

franklinchou / gist:9d27a92c3cb9537146a16ffe1ba55799
Created Nov 23, 2018 — forked from milessabin/gist:9042788
Boilerplate free conversion from case classes to shapeless records via LabelledGeneric ... coming soon to shapeless 2.0.0.
View gist:9d27a92c3cb9537146a16ffe1ba55799
scala> import shapeless._, record._
import shapeless._
import record._
scala> case class Person(name: String, address: String, age: Int)
defined class Person
scala> val joe = Person("Joe", "Brighton", 33)
joe: Person = Person(Joe,Brighton,33)
You can’t perform that action at this time.