Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.compilers > #1374

Re: OOP vs imperative, was Hello v1.0.3 distributed programming language available (alpha)

From Kaz Kylheku <kaz@kylheku.com>
Newsgroups comp.compilers
Subject Re: OOP vs imperative, was Hello v1.0.3 distributed programming language available (alpha)
Date 2014-09-10 04:58 +0000
Organization Aioe.org NNTP Server
Message-ID <14-09-008@comp.compilers> (permalink)
References <14-09-005@comp.compilers> <14-09-007@comp.compilers>

Show all headers | View raw


On 2014-09-10, glen herrmannsfeldt <gah@ugcs.caltech.edu> wrote:
>> Hello is a general-purpose, object-oriented, imperative, protocol-agnostic
>> language for distributed applications. ...

> For that reason, I tended to think of imperative as exclusive
> from object-oriented.  Not that you can't, or shouldn't, write
> imperative programs in OO languages, but that it wouldn't be
> used as a term in the description.  (Or, why is it that vol. 2
> isn't called "Non-Object Oriented Languages"?) ...

Popular object orientation, like in Java, C++, Python, and whatnot,
is thoroughly imperative.

Objects have state, and support methods which mutate state.

This changing state is central to the collaboration among objects
in OO designs; OO is the organizational tool for managing the complexity
of all that state.

It is possible to have functional object-oriented programming;
everything is a constructor or non-mutating accessor.

An example of this is the treatment of numbers in the Common Lisp
Object System (CLOS). You cannot mutate an integer, ratio,
floating-point number or complex number. However, they belong to
classes linked by inheritance, and methods can be easily written in
the object system which specialize over various kinds of numbers. They
just return new numbers constructed based on their arguments.

Back to comp.compilers | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Hello v1.0.3 distributed programming language available (alpha) Boris Burshteyn <bburshteyn@amsdec.com> - 2014-09-09 12:38 -0700
  Re: Hello v1.0.3 distributed programming language available (alpha) glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2014-09-10 01:48 +0000
    Re: OOP vs imperative, was Hello v1.0.3 distributed programming language available (alpha) Kaz Kylheku <kaz@kylheku.com> - 2014-09-10 04:58 +0000
    Re: OOP vs imperative, was Hello v1.0.3 distributed programming language available (alpha) Martin Ward <martin@gkc.org.uk> - 2014-09-10 09:44 +0100
    Re: OOP vs imperative, was Hello v1.0.3 distributed programming language available (alpha) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2014-09-10 16:14 +0000
      Re: OOP vs imperative, was Hello v1.0.3 distributed programming language available (alpha) Martin Ward <martin@gkc.org.uk> - 2014-09-11 13:16 +0100
        Re: OOP vs imperative, was Hello v1.0.3 distributed programming language available (alpha) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2014-09-15 08:07 +0000

csiph-web