Re: why Obj-C
Re: why Obj-C
- Subject: Re: why Obj-C
- From: Matthew Johnson <email@hidden>
- Date: Tue, 09 Apr 2002 11:12:24 +1000
Michael Gersten wrote:
>
> > > Why are we forced to learn yet another syntax that is very alien to
>
> > C++/Java. I absolutely love the interface builder its
>
>
Just a quick question: Why do you think the syntax is alien?
The use of ['s mainly turns my stomach. And I bet people who don't actually have to learn Obj-C are put off by them too. Using a function style (C style) would make Obj-C more likely to be given a chance by busy programmers.
>
>
As someone else said
>
> You do know that Objective-C is/was a preprocessor for C right ? Gcc
>
> integrates the Objective-C parser into the C parser as an optimization.
>
>
Believe it or not, C++ started out as a preprocessor for C as well.
>
it was called cfront
>
>
> > How many languages do you know ? I say the more the better.
>
> >
>
>
>
> In order of learning (oldest to youngest):
>
> FORTRAN,basic,Pascal,lisp,prolog,C++,C,X86 assembly,mc68000 assembly,Java
>
>
>
> In order of preference:
>
> C,C++,Java,FORTRAN,Pascal,basic,lisp,prolog,mc68000 assembly,X86 assembly
>
>
Hmm... what's missing on these lists?
>
Objective C isn't here yet.
>
But it looks like you say you learned C++ before you learned C. That's an odd one.
>
(Hey, another lisp and prolog person! Good. But why rate them so low on the preference order?)
They are fantastic to solve particular problems. I just don't come accross those problems that are large enough that I would really get any benifit from using prolog or lisp that often. And more to the point I have become terribly out of practice.
>
> I disagree, The more languages I have under my belt the less expert I become in the lot. Maybe I am getting old and
>
> feeble but I seem to of reached a limit in which if I learn something new I forget something old ;)
>
>
Then forget FORTRAN [duck (<shoowsh> as a flame misses me)]
Hey!!! don't pick on FORTRAN!!!........ well ok pick on it. But there is still a very large amount of code out their in F77.
>
> > > just excellent. But then you have to write the meat of the program and its
>
> > been not a very pleasent experience for a
>
> > > newbie to mac but I experienced C/C++ dude.
>
> >
>
> > Are you that hung up on syntax or were you unable to grasp the dynamic
>
> > nature of Objective-C ?
>
>
>
> Yes.
>
>
Yes what? Hung up on syntax? The dynamic nature?
Yes and Yes. Though since then people have explained the benifits of the dynamic nature. I am yet to be convinced in myself that **I** need this.
>
It looks like you want to treat
>
[object messageName:arg1 andDescription: arg2 whatItIs: arg3]
>
as object.messageNameAndDescriptionWhatItIs (arg1, arg2, arg3)
>
>
which looks remarkably like what the java bridge preprocessor does. [Look at the Java to Objc Bridge Spec, or .jobs files.]
>
Yes that would be preferable..... soooooooo very preferable. But its Java and its once bitten twice shy with that little nest of vipers.
>
> > > I will never understand the IT worlds obsession with reinventing the wheel.
>
>
Simple. The IT world is dominated by people with ADD/ADHD.
>
New, exciting, different, just because it is new, exciting, different.
Yes..... pathetic isn't it. I find that the most baseless technology gets a look in for ridulous reasons: Good marketing and sticking the word "standard" in it. Once that happens the ADD/ADHD boys come in and nuts. And the monster feeds on itself and then your forced to adopt it because we have to follow the other lemmings and................ oooops medication time....... I digress.
>
> Java is a buggy slow toy (duck) ok that was flame bait. But I don't like Java either. Its like C++ with all the good
>
> bits taken out. pointers rock!!!
>
>
Keep in mind what Java was designed for.
>
>
Java was designed to solve one specific problem: How can I guarantee to you, that even if you do not trust me, and think I'm trying to steal data from you, that this program of mine can run on your machine and do no harm to you no matter what.
>
Unrestricted pointers made that impossible.
>
All of the restrictions/limits in Java come from that design goal.
>
>
Now, take that design restriction, and try to say "Ok, now I'm in a trusted environment, I want the full power of C/assembly with the convenience of objects/classes". Can you?
>
So it was designed to run in a browser. Only use it for a browser.
>
Java with JIT isn't slow.
Thats not my experience.
>
> > I recommend that you learn Lisp, Smalltalk, Eiffel, Perl, and at least one
>
> > assembly language. Broaden your horizons. Then come back and look at C
>
> > derived languages with a different admiration and sense of limitations.
>
>
>
> No thanks. I have work to do.
>
>
>
> All the languages I have learnt (see above) the most flexible/powerful I know is C.
>
>
Not assembly? Odd.
Yes i suppose assembly is more powerful but your code only works on one platform. That doesn't give it much flexibility.
>
> This is why Obj-C has been a bit of
>
> a dissappointment for me. I didn't expect to have to learn the language as well the programming methodology/Classes.
>
>
Odd. Every one of the languages you've learned so far, you've had to learn the syntax and the standard libraries. ObjC is no different.
My expectations (unfounded) were that it was going to be a subtle change to C. It could of been. Its a pity it wasn't.
>
>
Michael
Matt.
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.