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


Groups > comp.lang.python > #43883

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

Path csiph.com!usenet.pasdenom.info!news.albasani.net!newsfeed.freenet.ag!news2.euro.net!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail
Return-Path <dreamingforward@gmail.com>
X-Original-To python-list@python.org
Delivered-To python-list@mail.python.org
X-Spam-Status OK 0.049
X-Spam-Evidence '*H*': 0.90; '*S*': 0.00; 'initialize': 0.07; 'falls': 0.09; 'logic': 0.09; 'models.': 0.09; 'useless': 0.09; 'cc:addr:python-list': 0.11; 'dismiss': 0.16; 'distinct': 0.16; 'etc?': 0.16; 'lambda': 0.16; 'math,': 0.16; 'name)': 0.16; 'say.': 0.16; 'silly': 0.16; 'subject: \n ': 0.16; 'subject:OOP': 0.16; 'subject:object': 0.16; 'subject:possible': 0.16; 'subject:programming': 0.16; 'subject:type': 0.16; 'theorist': 0.16; 'two.': 0.16; 'language': 0.16; "hasn't": 0.19; "python's": 0.19; 'thanks.': 0.20; 'machine': 0.22; 'cc:addr:python.org': 0.22; 'lets': 0.24; 'mathematical': 0.24; 'math': 0.24; '(or': 0.24; 'cc:2**0': 0.24; 'cc:no real name:2**0': 0.24; 'subject:/': 0.26; 'world,': 0.26; 'header:In-Reply-To:1': 0.27; 'points': 0.29; 'forgot': 0.30; 'message-id:@mail.gmail.com': 0.30; "i'm": 0.30; 'towards': 0.31; 'url:wiki': 0.31; 'url:wikipedia': 0.31; 'common': 0.35; 'received:google.com': 0.35; 'there': 0.35; 'up!': 0.36; 'url:org': 0.36; 'project': 0.37; 'winning': 0.38; 'fact': 0.38; 'rather': 0.38; 'enough': 0.39; 'called': 0.40; 'wonderful': 0.60; 'making': 0.63; 'such': 0.63; 'subject:The': 0.64; 'teach': 0.65; 'to:addr:gmail.com': 0.65; 'between': 0.67; 'believe': 0.68; 'yes': 0.68; 'enroll': 0.68; 'study': 0.69; 'led': 0.72; 'theoretical': 0.74; 'music': 0.75; 'heavy': 0.81; 'truth': 0.81; 'irrelevant': 0.84; 'voices': 0.84; 'wars': 0.84; 'aka': 0.91; 'calculus': 0.91; 'not:': 0.91; 'reasoning': 0.91; 'schools': 0.91; 'from.': 0.93; 'washington': 0.93
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=drF4M1s1LDBues9tQoxELUZgtR5BQKo4B5hN6QbMIMM=; b=rKIFxRYloLoukYwheExovPeXRnc2MQiAtZgGlKpg5nEtCtnjMMPGvI/krFp2ehrIKm RRozVz1d9YJgy7jm6KZA/alhi0GD0pgYn6jGdQwg2gSxGNmOeT1BVonoTE8p4zK5dFkr cS0VOVXkoZISt6GNatwsiaCxfFr6d47yYiLFcbu+hApRVL9LWlyatocCxkp58n4HxljL lFqHT3VJ/6sQAys29MwoybA243FVTMHZLYRB7GP9CidKxn+48cMFzjPtwa84w59N2Gz/ 8mXOFXK4uxIGwlQ7bAok0sYDf6F93cnd4Z7Gr7ccxxB0JTQdB0r1HcZ5yYWSA6x/VKs4 MIRQ==
MIME-Version 1.0
X-Received by 10.180.208.47 with SMTP id mb15mr37665877wic.16.1366343900432; Thu, 18 Apr 2013 20:58:20 -0700 (PDT)
In-Reply-To <10511876-84bf-41f5-ad96-cf4ee5a6973e@di5g2000pbc.googlegroups.com>
References <CAMjeLr_7A-NRtec=K_ZsjXA_oJHnD6+vpttz4Ma0vtDRbb+o2w@mail.gmail.com> <CAOvMSvXy=iJhUtMfncv-RE3HQw+7DJO-M1-TaeAFFhnDe9mpUA@mail.gmail.com> <BLU173-W31425FA225FA31B42E5B91CDCC0@phx.gbl> <mailman.804.1366325597.3114.python-list@python.org> <10511876-84bf-41f5-ad96-cf4ee5a6973e@di5g2000pbc.googlegroups.com>
Date Thu, 18 Apr 2013 20:58:20 -0700
Subject Re: The type/object distinction and possible synthesis of OOP and imperative programming languages
From Mark Janssen <dreamingforward@gmail.com>
To rusi <rustompmody@gmail.com>
Content-Type text/plain; charset=ISO-8859-1
Cc python-list@python.org
X-BeenThere python-list@python.org
X-Mailman-Version 2.1.15
Precedence list
List-Id General discussion list for the Python programming language <python-list.python.org>
List-Unsubscribe <http://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-list/>
List-Post <mailto:python-list@python.org>
List-Help <mailto:python-list-request@python.org?subject=help>
List-Subscribe <http://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe>
Newsgroups comp.lang.python
Message-ID <mailman.811.1366343902.3114.python-list@python.org> (permalink)
Lines 64
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1366343902 news.xs4all.nl 2275 [2001:888:2000:d::a6]:58112
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python:43883

Show key headers only | View raw


>> The main thing that I notice is that there is a heavy "bias" in
>> academia towards mathematical models.
>
> Yeah wonderful observation. Lets clean up!
>
> If I have a loop:
>
>  while i < len(a) and a[i] != x:
>    i++
>
> I need to understand that at the end of the loop:
> i >= len(a) or a[i] == x
> and not
> i >= len(a) and a[i] == x
> nor
> i == len(a) or a[i] == x  # What if I forgot to initialize i?

You know in my world, we have what's called Input/Output, rather than
punchcards or switchbanks where you come from.  Why not:  "print
i,a[i]".  Done!

> Now why bother to teach students such a silly thing (and silly name)
> as deMorgan?

Well deMorgan falls into BooleanLogic which I'm arguing is distinct
from the the mathematical realm where the lambda calculus wizards come
from.  So that's my camp, thanks.

> So all hail to your project of cleaning up the useless math from CS.

Yes, on useless math, no on *useful* math.  Thanks.

> And to whet your appetite for the grandeur and glory of your
> visionings why not start with making music schools enroll tone-deaf
> students?  Why wasn't Beethoven deaf?

Beethoven was deaf.

> You need to study some history (or is that irrelevant like math?)
> The Turing who invented the Turing machine in 1936 led the code-
> cracking efforts of the allies a couple of years later.
> Do you allow for the fact that he may have had abilities that were
> common to both aka 'math' 'theory' etc?
> Or do you believe that winning wars is a theoretical and irrelevant
> exercise?

Please, I don't dismiss math anymore than a number theorist might
dismiss the realm of complex numbers.

> Yes there is some truth in what you say.  Just call it logic as object-
> language (what you call logic-gates) and logic as meta-language ie
> logic for reasoning

Right, and I'm arguing that there hasn't been enough conceptual
separation between the two.  So why are you arguing?

> Also good to study the views of one of the doyens of OOP:
> http://en.wikipedia.org/wiki/Alexander_Stepanov#Criticism_of_OOP

That's a very good reference.  It voices some of my points that are in
criticism of python's object architecture.
-- 
MarkJ
Tacoma, Washington

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [TYPES] The type/object distinction and possible synthesis of OOP and imperative programming languages Mark Janssen <dreamingforward@gmail.com> - 2013-04-18 15:53 -0700
  Re: The type/object distinction and possible synthesis of OOP and imperative programming languages rusi <rustompmody@gmail.com> - 2013-04-18 20:35 -0700
    Re: The type/object distinction and possible synthesis of OOP and imperative programming languages Mark Janssen <dreamingforward@gmail.com> - 2013-04-18 20:58 -0700
    Re: The type/object distinction and possible synthesis of OOP and imperative programming languages Chris Angelico <rosuav@gmail.com> - 2013-04-19 17:05 +1000
    Re: The type/object distinction and possible synthesis of OOP and imperative programming languages Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-04-19 18:58 -0400

csiph-web