Skip to content

Instantly share code, notes, and snippets.

@asarkar
asarkar / Mixin.scala
Created June 10, 2015 07:25
Scala Mixin Demo
trait Logged { def log(msg: String) {} }
trait Chattery extends Logged { def chatter = log("I chatter. Do you mind?") }
trait ConsoleLogger extends Logged { override def log(msg: String) = println(msg) }
scala> val ch = new Chattery() with ConsoleLogger
ch: Chattery with ConsoleLogger = $anon$1@1ef7fe8e
scala> ch.chatter
@asarkar
asarkar / Employee.java
Last active August 29, 2015 14:22
Scala Collections Demo
public class Employee {
private Address addr;
private int age;
// Getters and setters
}
class Address {
private String streetAddr1;
private String streetAddr2;
@asarkar
asarkar / Fraction.java
Created June 9, 2015 06:43
Scala Closure Demo
public class Fraction {
private final int num;
private final int denom;
public Fraction(int num, int denom) {
this.num = num;
this.denom = denom;
}
public int getNum() {