For folks who got lost on the word "extension functions" - it's a way to attach a function or property to the instances of the existing classes. For example,
val d = 10.twice()It's very much like
twice(int) but done in a very clean way. Visually it looks like you're calling a member of the class, but in reality, the compiler calls your function passing receiver as an argument.