Earlier quoted context omitted.
With clang, ObjC is getting very interesting features that take it closer and closer to "real" high level languages, like GCD, ARC and blocks. I'd still like more type safety, but the evolution there is slower and would need more fundamental changes to the language and abandoning C compatibility.
I dunno--in an age where we have actual, halfway decent garbage collection, referring to ARC as something that might compete favorably with those "real" high level languages makes my eyes go a bit crossed.
I loved C. But it always fell short for me. Objective-C fixed that.
61–70 of 82 posts
Re: I loved C. But it always fell short for me. Objective-C fixed that.
#62Am I the only one who thinks Objective-C is complete crap compared to Scala, Haskell and the likes? Hell, even C++ is way faster to code in and provides a better experience. Obj C is just immensely verbose. I'd love to be able to use Qt + C++ to program iOS instead..
You 're not the only one. I too think speed of development and maintenance is key. It's just that lots of people live in (and on) the Apple bubble. I think Obj-c was one of Jobs' obsessions or else i can't explain why anyone would want to force people to write code like that in 2011. I have a feeling that Apple may open up their APIs now that he;s gone.
Otherwise, I have no idea.
Re: I loved C. But it always fell short for me. Objective-C fixed that.
#63Re: I loved C. But it always fell short for me. Objective-C fixed that.
#64Earlier quoted context omitted.
With clang, ObjC is getting very interesting features that take it closer and closer to "real" high level languages, like GCD, ARC and blocks. I'd still like more type safety, but the evolution there is slower and would need more fundamental changes to the language and abandoning C compatibility.
I dunno--in an age where we have actual, halfway decent garbage collection, referring to ARC as something that might compete favorably with those "real" high level languages makes my eyes go a bit crossed.
ARC fits better with the C world of quickly tuning bottlenecks to register speed. Have you ever debugged C code with custom object lifetimes under a garbage collector? It's a nightmare.
Re: I loved C. But it always fell short for me. Objective-C fixed that.
#65Re: I loved C. But it always fell short for me. Objective-C fixed that.
#66Example: I wrote a GA-based solver in Objective-C. It worked but it was painfully slow. I re-coded in nice-clean C. The plain C version was incredibly fast and efficient in every way. Best of all, it is highly portable too.
Re: I loved C. But it always fell short for me. Objective-C fixed that.
#67Would anyone care to comment on the state of Obj-C outside the Mac/iOS platforms? The impression I get from previous posts on this is that the utility of Obj-C is closely tied to the functionality provided by the (proprietary) Cocoa platform. Since there are so many developers from outside the Apple ecosystem learning Obj-C in order to develop for iOS, is there any signs of a movement in the other direction? Are deve…
Using the Objective-C language on Debian was as easy as doing "apt-get install gobjc". But, as you stated, most of the utility comes from Cocoa.
Even though it's technically possible to use Objective-C without Cocoa, in practice it's almost not worth it. It's not like C++ where you can chose between Qt and Gtk+ or some other big library. There's Cocoa/Foundation or there's nothing. It would be hard to find learning material that didn't use Cocoa, even if you wanted to try it.
There are a few alternative Cocoa implementations that run on Linux and even Windows.
Cocotron lets you create Windows apps using Cocoa, but it's a cross-compiler that runs in XCode. Didn't fit my needs, so I didn't try it.
libNuFound was pretty good for the Foundation part of Cocoa, but it took a bit of work to make it work. Objective-C with only Foundation has a lot more functionality than plain Objective-C, but still no where near the usefulness of Cocoa.
The most complete and most popular option is GNUStep. It implements Foundation and a good chunk of Cocoa. They've done good work, but the documentation was lacking, and I never knew whether code I saw on the web and in Cocoa tutorials would work under GNUStep, without trying it. Apple's developer documentation is really good, and I used it as much as possible, but it was pretty common to run into stuff that didn't work under GNUStep. My other big complaint was that it's a really heavy weight "library." I don't know if it's their fault, but I vaguely remember having to install a bunch of seemingly unrelated dependencies just to get their *-dev packages installed on Debian.
Perhaps not the best comparison, but for me, using GNUStep libraries to develop Cocoa always felt like using Wine to run Windows programs.
I had a few other links about setting everything up, but these two were helpful:
http://blog.vucica.net/2010/12/getting-objective-c-2-0-to-wo...
http://orangejuiceliberationfront.com/playing-with-objective...
FWIW, I did eventually buy a Mac, and can say Objective-C and Cocoa on iMac is much easier on OSX than Debian.
Re: I loved C. But it always fell short for me. Objective-C fixed that.
#68Earlier quoted context omitted.
I'm not the OP, but it felt like Go was coming from a culture a little bit different from the mainstream programming culture. The guys who made Go have worked together at Bell labs for year on stuff like Plan 9 and to me it seems that they lost touch with the rest of the world.
> The guys who made Go have worked together at Bell labs for year on stuff like Plan 9 and to me it seems that they lost touch with the rest of the world. Before they worked on Plan 9 they created Unix, that the *nix world lost its way from its simple, small and beautiful roots is clearly something that still pains them greatly. I would not say that they lost touch with the rest of the world, but that the rest of the…
Things like variable declarations matching the look of how variables are used ('inside out' parsing) are not simple and are responsible for the certain something that makes C work. And Unix was never beautiful, it was always a huge hack.
Re: I loved C. But it always fell short for me. Objective-C fixed that.
#69Earlier quoted context omitted.
You 're not the only one. I too think speed of development and maintenance is key. It's just that lots of people live in (and on) the Apple bubble. I think Obj-c was one of Jobs' obsessions or else i can't explain why anyone would want to force people to write code like that in 2011. I have a feeling that Apple may open up their APIs now that he;s gone.
Does submitting to the App Store require you to provide source? If so, it seems like a compelling reason to enforce a single language to avoid the explosion in skills required for the app reviewers. Otherwise, I have no idea.
Re: I loved C. But it always fell short for me. Objective-C fixed that.
#70Earlier quoted context omitted.
That's an excellent page, thanks! This actually makes me wonder... how much overhead is in each objective c object over a similar struct in c?
In terms of size, they're almost the same (Objective-C classes are implemented with structs). In terms of speed, the difference is absolutely huge. You can generate a random number faster than you can make an Objective-C call. But, it's fast enough for 95% of things people do with it.