ReactiveCocoa for a better world
github.com
github.com
If you look at an Event like KeyUp, you'd end up with some items, in a particular order. Thus, you realize, that events and lists really are the same thing. In fact, they're not only ostensibly the same, they are mathematically provable to be the same.
Rx therefore, gives you all the operations you can do to a list, and applies it to an event (or a callback, which is just an event that only happens once).
If anyone wants a simple introduction to Rx, Paul Betts (and Jesse Liberty) wrote one last year.
http://www.amazon.com/Programming-Reactive-Extensions-Jesse-...
Edit: it appears that the MS Reactive Extensions are LINQ-y. Not sure if ReactiveCocoa is the same.
Yeah, it can be ugly, but once you know what's going on it all reads pretty quickly.
At 80-300 characters per line it's fine and very readable.
What
? The
blog is displaying
the text narrow-
er than it shows up in
a source file
. This
makes it
uglier than it is in
actual prac-
tice
My point was, it is hard to print 300 chars wide code. Ideal code width for printing is < 80 chars...
I'm pretty sure I've never printed ObjC
I am a Cocoa developer, and I have to say that the presentation of this idea on the blog leaves something to be desired. It seems to be oriented towards people already familiar with Reactive Programming and FP, but it doesn't set up that expectation at all. At the same time, it's very confusing and a little unintentionally off-putting for devs who aren't familiar with those notions, even for those who already know Objective-C and KVO.
It still might be a good idea, though.
The problem with Rx / RAC is there's a big learning curve, especially coming from procedural programming. It's much bigger than 1 blog post can cover. My hope at least is that it will drive at least some people to dive deeper.
However, I haven't made my mind yet about RubyMotion. There are some propositions for it and some against and a lot has to come in the next weeks. Let's see what will happen.
Note: I have been coding in Objective-C for two years and in Ruby for 1-2 months.
It will detangle some big apps I'm on.