Bob Ippolito: > Also, don't the newer compilers complain when you declare variables in > the middle of code? Wouldn't you have to put a "NSRect bounds;" at > the top of the block? Obviously you could just do [NSBezierPath > fillRect:[self rectOfRow: row]] .. which is probably how I'd have done > it in the first place. All valid points, but still, I didn't mean to bash Objective-C at all. My comparison was about my basically 7 pyLOC against something like 20-30 objcLOC (depending on how you count, braces, etc.) of Evan Jones' code (including other methods which are perhaps not strictly needed). I *do* like Obj-C a lot, but Python is less to read and type, and also faster to test and get running... > Along the same lines, ObjC doesn't have a short way to say anything > (no operators). Probably my favorite feature of Python are strings, > lists and dicts, with all the great __setitem__/__getitem__ stuff to > go with it. In ObjC, a+b never means anything useful, unless a and b > are primitive C types.. that's obnoxious, because you'd have to say > a.add_(b) or something like that... Imagine writing an equation like > that. Sure, in ObjC you can use int, long, float, double.. but what > about equivalents to Python's long or complex? What about doing > arrays/matrices (Numeric), etc. You can't create a NSDictionary like > {a:b}. Operators and other syntax is extremely important, more so > than a forced message passing syntax. If you want message passing > syntax just use keyword arguments all over the place: [...] That's quite a few things I already wanted to list in my upcoming article. ;-) Drew McCormack: > Where I prefer Obj-C/Cocoa: > Possibility of static typing (makes large programs more readable, and > catches a few bugs at compile time) > Design of libraries. Cocoa is beautifully designed and stable. I have > the feeling python's libs have evolved in a less stable way. With each > new release of python, things get replaced, indicating they weren't > that well done the first time round. Unfortunately, this is true, especially of the standard library. It lacks a huge amount of consistency, which Cocoa, being an in- house year-long development, definitly has - sigh! And sadly, as you would expect in an Open Source project, nobody seems to care about that, at least not enough to make a difference... Dinu -- Dinu C. Gherman ...................................................................... "The whole point of brainwashing, is that those being brainwashed don't know it." (Graham Haley)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4