Loading ...
Sorry, an error occurred while loading the content.

Re: [hackers-il] re: object orientation

Expand Messages
  • Moshe Zadka
    ... I m willing to give a Sather lecture too. I ll leave Cecil for someone else, and Eiffel to neo-fascists. ... Define object . ( Must have methods is not a
    Message 1 of 2 , May 8, 2000
    • 0 Attachment
      On Mon, 8 May 2000, Mayer Goldberg wrote:

      > I'm not familiar with Cecil, Sather and Eiffel, so I will suspend judgement on those.

      I'm willing to give a Sather lecture too. I'll leave Cecil for someone
      else, and Eiffel to neo-fascists.

      > Java OO isn't built all the way into the type system, since int, char,
      > byte, etc aren't objects.

      Define "object".
      ("Must have methods" is not a good definition:

      I assume you can have (in smalltalk, e.g.) the equivalent of

      class foo {})

      > [Java environments] don't encourage the mark of true object orientation:
      > Writing many classes and many
      > *very small* methods, but rather a C-like style of programming.

      "Encourage" is a subjective term. If you want to say Java programmers are
      nincompoops, just say so.

      > Another problem is that Throwables implemented so poorly, that
      > they're practical only for exception handling rather than for general control flow
      > management

      Surprise! That was the intent of throwables. If you want continuations,
      you'll have to go for scheme.

      > Objects are just one more thing in the Common LISP world.

      I'm afraid I've had a bit of a stutter: when I say CLOS, I mean
      CLOS-like systems on scheme. In scheme, everything is an object. Not
      everything is a class instance.

      > What makes
      > Smalltalk so dramatically different is that
      >
      > - It's object oriented all the way down to the basic types.

      So is RScheme. There's nothing in R5RS that stops you from being OO all
      the way down.

      > - The basic ideas are few, simple, and clear.

      What has that to do with OO?

      > So I guess I would say that I know two languages in which object orientation is not an
      > add-on, not an extension, but an organic part: Smalltalk and Dylan.

      It is an add-on in Dylan, which started out as Lisp.

      > One point worth noting is that the people that developed object orientation envisioned
      > it as an interactive environment. While some people will insist on studying a language
      > on the basis of its formal definition alone, they fail to notice, on account of this
      > attitude, that object oriented languages were conceived to provide certain dynamic
      > capabilities that are emptied of any meaning when one insists on a batch
      > development environment.

      Nothing about a language makes it impossible to use with interactive
      environments. And the fact is, you still have not said in what way
      Smalltalk is OO and CLOS isn't (take my weird meaning for CLOS: this
      scheme hacker cannot stand the smell of common lisp)

      --
      Moshe Zadka <moshez@...>
      http://www.oreilly.com/news/prescod_0300.html
      http://www.linux.org.il -- we put the penguin in .com
    Your message has been successfully submitted and would be delivered to recipients shortly.