Since 0.3.0.
proc run[A; B](self: A -> B; arg: A): B
proc run[T](self: () -> T): T
proc run[T](self: Unit -> T): T