• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Cocoa Newbie
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Cocoa Newbie


  • Subject: Re: Cocoa Newbie
  • From: Marcel Weiher <email@hidden>
  • Date: Tue, 9 Oct 2001 01:59:28 +0200

On Tuesday, October 9, 2001, at 01:11 AM, Ben Mackin wrote:

John C. Randolph wrote:
Try LISP, Forth, Python, Perl, and one or two assemblers.

Also Prolog for a really radically different approach. You should also at least look at one of the more modern functional languages. Ondra mentioned Smalltalk and I would like to second and third that suggestion! The person who coined the term "object oriented", Alan Kay, also was the inventor of Smalltalk, (together with Dan Ingalls), so this is at the very least an important historical perspective.

However, modern Smalltalk implementations are also still pretty much the most productive programming environments around, so do take a look.

How different are C++ and Objective C? they both branch off from C,
correct? Why did you mention that C++ is a headache? How is objective C
easier to learn/implement than C++?

Yes, both Objective-C and C++ have C in common as their base. However, Objective-C goes pretty much as far as you can in supporting full OO, basing its extensions on Smalltalk, whereas it was an explict goal of C++ to have only as much OO as could "reasonably" be supported in a systems programming language that stays true to original C.

The development over the years has shown that the C++ approach of "just a little OO" didn't really work out (sort of like "a little pregnant"), see the feature creep that's resulted in the current behemoth of a language specification. Objective-C added essentially just one feature: fully dynamic, runtime-based dynamic message dispatch and some syntactic sugar for class-definitions and these dynamic message sends.

As I said before, this was taken from Smalltalk, and Smalltalk has shown since about 1972 that that is all you really need. As to ease of implementation: I managed to implement a simple Objective-C runtime and pre-processor when I was 17 years old using just a C compiler and having no experience with parsing/compiling or any other part of language implementation. I am much older now, have a CompSci degree and significant industry experience including some more language implementations, and I am not sure I'd be up to implementing a C++ system.

Marcel

--
Marcel Weiher Metaobject Software Technologies
email@hidden www.metaobject.com


References: 
 >Re: Cocoa Newbie (From: email@hidden (Ben Mackin))

  • Prev by Date: Re: Cocoa Newbie
  • Next by Date: Re: cocoa-dev digest, Vol 1 #692 - 14 msgs
  • Previous by thread: Re: Cocoa Newbie
  • Next by thread: Re: Cocoa Newbie
  • Index(es):
    • Date
    • Thread