Parameter pattern matching

During compilation

def equal(a,a), do: true

is basically rewritten to

def equal(a,b) when a === b, do: true

Both these functions compile to the exact same bytecode.