428 karma · joined November 30, 2012
[~~~~~~~~~~~~~~~~[a~~~~~~~b~~]~~~] Memory
^–––––––––––––––––^ Address
^–––––––^ Offset
And now, a[b] is just short hand for the pointer arithmetic going on and you could just use any two ints and access any arbitrary memory address (i assume the compiler enforces that this doesn't happen). address[offset] => *(address + offset) => getValueAtAddress(valueIn(address) + valueIn(offset))
a[b] => *(a + b) => getValueAtAddress(valueIn(a) + valueIn(b))
b[a] => *(b + a) => getValueAtAddress(valueIn(a) + valueIn(b))
Those two are obviously the same so *(a + b) == b[a] == a[b]https://www.google.co.uk/search?q=star+trek+padd&num=30&clie...
Although i will say, i do not have a huge host of experience to go from, but this is from the perspective of someone who could potentially be your customer. With two apps at rough feature parity, i would pick the native app every single time, regardless of how nicely you've styled your app, at the end of the day the burden of proof lies on you; to prove the value of your app, if you cannot be bothered to create an appearance and functionality which is native, chances are that if you can't be bothered to do so, you've cut corners elsewhere.
I'm sorry if that comes across as presumptuous, perhaps i completely misunderstood what you're saying, or just jumped to conclusions, if so sorry, if not, i hope got my point across.
Self is one of those things, if you wanted to you could easily add another instance variable, just implement getattr and have it return a partial function. Although I will admit it is one area which does cause more than its fair share of errors, but I prefer it to Ruby's methodology.