Xref: utzoo comp.object:1532 comp.lang.c++:8741 Path: utzoo!attcan!uunet!mailrus!cs.utexas.edu!usc!ucsd!ucbvax!galileo.berkeley.edu!jbuck From: jbuck@galileo.berkeley.edu (Joe Buck) Newsgroups: comp.object,comp.lang.c++ Subject: Re: Choice of language for manufacturing Applications Message-ID: <37938@ucbvax.BERKELEY.EDU> Date: 2 Aug 90 18:38:28 GMT References: <26686@pasteur.Berkeley.EDU> Sender: usenet@ucbvax.BERKELEY.EDU Reply-To: jbuck@galileo.berkeley.edu (Joe Buck) Lines: 69 In article <26686@pasteur.Berkeley.EDU>, lozinski@argon.uucp (Chris Lozinski) writes: |> [ check out his article, I'm not going to quote it all here ] Chris, it may indeed be true that Objective-C is the best language for your problem. I'm puzzled by a lot of your assertions though. For example: |> C++ is the computer scientists language where the focus is on |> technical aspects of the language. I don't see how Objective-C is any less a "computer scientist's language". !> Objective-C is the |> businessman's language, where the emphasis is on organizing large |> groups of people into cooperating communities assembling components |> into final applications. Both languages have this goal. I can't say who does the better job. Technically this is caused by the default |> structures of the objective-C language where the target class of a |> message does not need to be known at compile time. In contrast the |> default in C++ is that the target class does need to be known at |> compile time. To override this default, you simply specify one additional word in one place -- you insert the keyword "virtual" at the base of your class hierarchy. Voila -- the target class does not need to be known at compile time. |> Stepstone is tightly focussed on creating tools for software |> developers. AT&T by contrast is not in the market of selling |> software tools, and therefore cannot be expected to react as |> quickly to market requirements. C++ has an official standards body now, which is independent of AT&T. The users of the language will make sure it meets their requirements. Similarly, as Objective-C increases in popularity, Stepstone will lose control of their language as well. I don't see how your speculations on the competence of the two companies matter, except to the extent that Objective-C users are currently more dependent on StepStone than C++ users are on AT&T (this will change in the future). |> 1) The key feature that distinguishes Objective-C from C++ is |> the maintenance of symbol tables. Here I must agree with jsweet of |> Nasa. Objective-C allows the user to issue the following command |> |> [anObject perform: "aMessage"]; |> or alternatively |> |> aSelector = convertToSelector("aMessage"); |> [nObject perform aSelector]; This is a big advantage for Objective-C in some applications. Still, similar capabilities can be provided in a C++ program; I've done it, in a digital signal processing simulation environment. It would have been nice if I could have just used the built-in facilities of the language, but then my digital signal processing would run substantially slower because I'd get this symbol table overhead even when I don't want it. It's a tradeoff; for particular problems in business as well as science, different languages may have an advantage. I'll accept your judgment that Objective-C works better for you in your particular application. But all "business applications"? I doubt it. -- Joe Buck jbuck@galileo.berkeley.edu {uunet,ucbvax}!galileo.berkeley.edu!jbuck