I hate Java's type system