Hacker News new | ask | show | jobs
by drwh0 6398 days ago
if the only reason to embraced objective-j is its support for an (apparently) more "natural" means of OO programming, then to me that isn't a reason at all. how many people are modelling client software these days strictly by virtue of OO techniques? i'd go as far as to say OO is dead. i much prefer something like jQuery which doesn't get hung up on methodologies, instead looking to adapt better to the specific task at hand.

my guess is that objective-j is DOA. the pool of objective-c programmers is not a motivating factor...i'm not even sure there are many people who really love objective-c. indeed i would offer that the "leaky abstraction" is that which tries to graft one so-so language on top of another so-so language. just man up and use javascript for what it is.

2 comments

I can't help but feel you did not read this post. Simply saying Obj-J is a "leaky abstraction" is meaningless, and yet you offer no examples of how the abstraction leaks (or why its actually problematic).

On top of that, you seem dedicated to the argument that Objective-C is a bad language, and that Objective-J is silly for wanting to re-implement it. Of course, as mentioned in the post, that was in no way the goal of Objective-J. The actual language isn't the point.

Separately, Objective-C is a great language, and plenty of people love it. More every day thanks to the iPhone. Can you give me three reasons why you don't like it?

Finally, claiming OO programming is dead is nonsensical. Java is by far the world's most popular programming language. Right below it you'll find C++ and C#. Three strictly OO languages. Not to mention the fact that two of the three most popular JavaScript libraries build in classical inheritance.

Separately, Objective-C is a great language, and plenty of people love it

so much so that its almost impossible to find it being put to use outside of places apple forces it. and before you say "gnustep"...no one uses that

Can you give me three reasons why you don't like it?

1. goofy/eyes-bleed syntax

2. i don't care about OO

3. i'll think of something later

Finally, claiming OO programming is dead is nonsensical. Java is by far the world's most popular programming language.

java is a ployglot language. they're busy now trying to turn it into a hybrid-functional language...just like c#, the other kitchen-sink language

and c++ was designed from the ground-up to be multi-paradigm, this is all over everything stroustrup says about it

"1. goofy/eyes-bleed syntax"

This is almost always an indication that a programming language critic has nothing really thoughtful to say. Same with Lisp and S-expressions.

If I may paraphrase: "It's slightly different than what I'm used to, therefor I despise it."

I agree, the middle part is weak, but the bookends are compelling arguments.
You mean:

"impossible to find it being put to use outside of places apple forces it."

That's a huge caveat. iPhone development is extremely popular. Maybe the point is that people just put up with Objective C in order to do iPhone/Mac development. But I don't think that is true. NextStep had a small but rabidly devoted following, and part of that was because they really liked Objective C. Apple tried Java bindings to Cocoa at one point, but found everyone used Objective C anyways.

In general, I think it's true that most developers don't know much about ObjC until they want to develop for iPhone/Mac. But once they learn it, they tend to like it, from what I can tell.

Apple tried Java bindings to Cocoa at one point

oh come on, it is well known that apple intentionally dragged their feet on their java support for years

probably because they realized that as gross as java was, very few people would bother with objective c if they could get first-class support for java on cocoa

This is almost always an indication that a programming language critic has nothing really thoughtful to say. Same with Lisp and S-expressions.

i didn't mention lisp or s-expressions. of course taste is subjective, but the "objective c is fugly" meme has lots of adherents

I certainly agree with the "man up" sentiment. That's my complaint about GWT and Pyjamas. But jquery and YUI and prototype all add these OOP features in different ways. Objective-j is still javascript. It's not compiled, it's just uniquely funny-looking. (Note: there are advantages to a single-language stack, and compilation is not the end of the world.)

As it happens, the javascript language is incredibly flexible and expressive. Maybe we in the js community should man up and accept that there are many ways to skin the DOM cat. They may look rather different from one another, but they're all javascript.

to me jquery feels less heavy-handed about the abstraction. every abstraction has a price, i tend to avoid them unless they have a demonstrated value. to me, OO has no demonstrated value

to be honest, i see the basis of objective-j born from some notion that apple does things right so naturally we all want to do things they way they do...but objective c sucks (having coded in it), and i have no idea why people would want to muck up another stack by pasting objective c onto it

"to be honest, i see the basis of objective-j born from some notion that apple does things right"

The word "apple" DOES NOT APPEAR IN THE ARTICLE. (I just checked.) Please, read the article and reply to the very thoughtful points made there. Ascribing some vague, unsubstantiated motives to people who have carefully laid out their entire reasoning behind their decision does not reflect well on your ability to engage in substantive discussion.

wow i seem to have got your irish up. typical fanboy response. this site is full of moonies