Objective-Cでは、引数をとるメソッド呼び出しには以下のような書式を使います。
[obj1 message1: 1.0 message2: 2.0]
func1(arg1=1.0, arg2=2.0)
と
func1(arg2=2.0, arg1=1.0)
が同じ意味の関数呼び出しになるのですが、Objective-Cでは
[obj1 message2: 2.0 message1: 1.0]
というように順序を変えることはできないのだそうです。というか、順序を変えたものを二つ用意すると、異なる関数として呼び出されるのだとか*1。異なる定義をしてしまうと混乱しそうですが、それはそれで便利に使えるかも知れません。