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


Groups > comp.lang.python > #43801

Re: Atoms, Identifiers, and Primaries

Path csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!rt.uk.eu.org!newsfeed.xs4all.nl!newsfeed3.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail
Return-Path <ian.g.kelly@gmail.com>
X-Original-To python-list@python.org
Delivered-To python-list@mail.python.org
X-Spam-Status OK 0.000
X-Spam-Evidence '*H*': 1.00; '*S*': 0.00; '(at': 0.04; 'languages,': 0.04; 'guido': 0.05; 'expressions': 0.07; '*is*': 0.09; 'defines': 0.09; 'strings.': 0.09; 'yeah,': 0.09; 'python': 0.11; 'language,': 0.12; 'language.': 0.14; '("an': 0.16; '(also': 0.16; 'alphabet': 0.16; 'compute': 0.16; 'constructs.': 0.16; 'finite': 0.16; 'finite,': 0.16; 'formally': 0.16; 'infinite;': 0.16; 'janssen': 0.16; 'language)': 0.16; 'looping': 0.16; 'math,': 0.16; 'other,': 0.16; 'relates': 0.16; 'symbols': 0.16; 'so.': 0.16; 'language': 0.16; 'wrote:': 0.18; 'wed,': 0.18; 'basically': 0.19; "python's": 0.19; 'written': 0.21; '>>>': 0.22; 'example': 0.22; 'programming': 0.22; 'saying': 0.22; 'separate': 0.22; 'either.': 0.24; 'mathematical': 0.24; 'simpler': 0.24; 'sorry,': 0.24; 'equivalent': 0.26; 'least': 0.26; 'url:edu': 0.26; 'world,': 0.26; 'defined': 0.27; 'header:In-Reply-To:1': 0.27; 'point': 0.28; 'generally': 0.29; 'related': 0.29; "doesn't": 0.30; 'message-id:@mail.gmail.com': 0.30; 'procedures.': 0.31; 'know.': 0.32; "we're": 0.32; '(e.g.': 0.33; '(i.e.': 0.33; 'entirely': 0.33; 'implemented': 0.33; '"the': 0.34; "can't": 0.35; 'agree': 0.35; 'received:209.85': 0.35; 'received:209.85.220': 0.35; 'definition': 0.35; 'no,': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'two': 0.37; 'received:209': 0.37; 'sometimes': 0.38; 'ends': 0.38; 'to:addr :python-list': 0.38; 'pm,': 0.38; 'anything': 0.39; 'functional': 0.39; 'to:addr:python.org': 0.39; 'called': 0.40; 'ian': 0.60; 'most': 0.60; 'hope': 0.61; 'back': 0.62; 'term': 0.63; 'real': 0.63; 'such': 0.63; 'skip:n 10': 0.64; 'more': 0.64; 'url:pdf': 0.68; 'design.': 0.68; 'paper': 0.75; 'recursive.': 0.84; 'url:ucr': 0.84; 'items,': 0.91; '2013': 0.98
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:content-type; bh=qoNhLYCWOSkVJL1/b+/ICnuDZj+CLgUhnHZRQJZjg04=; b=rEFy1+5n150TjlphHao4CnVhWREmaei7q6B2JpCpOm1w7kGJOZFNPotVJlNyTSSDla R31VaGoRzyrPiwgCj8MWr7A2dNdv1TqEnP2qinOHhzdpVI4Xqu+TsTw4dZWtwXFaYA/E EZynMMeVPR/BkkenMnzaVUwlZGWihOz/7RIahRiWj04e3YxfRrRWKNz03rHuFpB6tG3s og1ylhFqmmRb6rF67ONx6EnPKyBxGRFem+fdvQM8AFipjN//8/tqPN3f2v7QvCnchwB8 7+kAMWkZG0x3pLcKQUFDPuSOXeN9PueifRHeG7qiLPrP+arO8VaV0bMO6IGrGnXuo0Ne suqg==
X-Received by 10.66.248.227 with SMTP id yp3mr11410363pac.158.1366254661930; Wed, 17 Apr 2013 20:11:01 -0700 (PDT)
MIME-Version 1.0
In-Reply-To <CAMjeLr_i76ADLRg91BtqYGmKTV89HCBdc0dter7Rg-2O1AGNvQ@mail.gmail.com>
References <66e78281-542b-41b3-a56d-04bf736d1e0a@googlegroups.com> <14a9ca59-218d-4dec-9e03-b7ac6b92d378@af5g2000pbd.googlegroups.com> <CAMjeLr9Z9f1y1NyLs44UqGYrnEEpABxouB4pr=xaaOdB-+HfLA@mail.gmail.com> <CALwzidmyVjmiqu5L7rNN=y62TP2JPudE-AGS32jmBPQ8b6upzw@mail.gmail.com> <CAMjeLr_i76ADLRg91BtqYGmKTV89HCBdc0dter7Rg-2O1AGNvQ@mail.gmail.com>
From Ian Kelly <ian.g.kelly@gmail.com>
Date Wed, 17 Apr 2013 21:10:21 -0600
Subject Re: Atoms, Identifiers, and Primaries
To Python <python-list@python.org>
Content-Type text/plain; charset=ISO-8859-1
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.751.1366254671.3114.python-list@python.org> (permalink)
Lines 68
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1366254671 news.xs4all.nl 2179 [2001:888:2000:d::a6]:49147
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python:43801

Show key headers only | View raw


On Wed, Apr 17, 2013 at 7:04 PM, Mark Janssen <dreamingforward@gmail.com> wrote:
> On Wed, Apr 17, 2013 at 5:33 PM, Ian Kelly <ian.g.kelly@gmail.com> wrote:
>> On Wed, Apr 17, 2013 at 5:40 PM, Mark Janssen <dreamingforward@gmail.com> wrote:
>>> Rercursion the "bedrock" of language-design.  I don't think so.  From
>>> what I know, a well-defined language ends at its symbols.  It makes no
>>> use of "infinities".
>>
>> From what I know, you can't have a Turing-complete language without
>> some form of recursion.  So yeah, it's pretty damn important in
>> language design.
>
> A Turing-complete language generally has items that are defined in
> terms of other, simpler items, but this is not called recursion in any
> C.S. paper I know.
> In C.S. of my world, recursion is a specific term that is related to
> functional calculii.  This type of recursion is sometimes often found
> in imperative/iterative languages, but is rooted in the fomer.

You are thinking of recursive procedures.  Recursion is the more
general concept of self-repetition.  In a programming language, it can
be implemented by recursive procedures, or it can equivalently be
implemented by looping constructs.

Incidentally, in computability theory (also known as "recursion
theory"), "recursive" is basically a synonym for "computable", which
relates back to my point that recursion is necessary for
Turing-completeness; a Turing-complete language is one that can
compute any computable (i.e. recursive) function.

>>> Conflating a programming
>>> language ("an infinite object such as python language") with a program
>>> written in that language ("there are an infinite number of python
>>> programs").   These two are entirely separate (at least anything
>>> implemented on a real computer).
>>
>> Mathematically, a language (e.g. a programming language) is a set of
>> well-formed strings (i.e. programs) constructed from the symbols of an
>> alphabet (i.e. tokens).
>
> Mathematically, perhaps, but from C.S. theory, a language is a
> fully-specified set of expressions and tokens which are considered
> valid -- it's grammar.

Sorry, but as computer science *is* math, the computer science
definition is the same as the mathematical one.  See for example this
CS paper which formally defines "language" as I described:

http://www.cs.ucr.edu/~jiang/cs215/tao-new.pdf

>> For most languages, this set is infinite;
>
> This set is always finite, as you can see on the specification for
> Python's language.

No, the set of valid Python programs is not finite.

>> saying "the Python language is infinite" is equivalent to saying
>> "there are an infinite number of Python programs".
>
> I don't think Guido would agree that "the Python language is
> infinite", but then perhaps he doesn't care either.
>
>> A finite, non-recursive grammar can only hope to accept a finite
>> number of strings.
>
> Is the language we're speaking in now one with a finite, non-recursive grammar?

No, English is also recursive.

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


Thread

Atoms, Identifiers, and Primaries Bruce McGoveran <bruce.mcgoveran@gmail.com> - 2013-04-16 19:57 -0700
  Re: Atoms, Identifiers, and Primaries rusi <rustompmody@gmail.com> - 2013-04-16 20:55 -0700
    Re: Atoms, Identifiers, and Primaries Mark Janssen <dreamingforward@gmail.com> - 2013-04-17 16:40 -0700
      Re: Atoms, Identifiers, and Primaries alex23 <wuwei23@gmail.com> - 2013-04-17 17:29 -0700
        Re: Atoms, Identifiers, and Primaries Mark Janssen <dreamingforward@gmail.com> - 2013-04-17 17:41 -0700
        Re: Atoms, Identifiers, and Primaries Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-18 02:04 +0100
      Re: Atoms, Identifiers, and Primaries rusi <rustompmody@gmail.com> - 2013-04-18 00:40 -0700
    Re: Atoms, Identifiers, and Primaries Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-17 18:33 -0600
      Re: Atoms, Identifiers, and Primaries Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-18 02:14 +0000
        Re: Atoms, Identifiers, and Primaries Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-17 21:12 -0600
    Re: Atoms, Identifiers, and Primaries Mark Janssen <dreamingforward@gmail.com> - 2013-04-17 18:04 -0700
    Re: Atoms, Identifiers, and Primaries Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-04-18 02:08 +0100
    Re: Atoms, Identifiers, and Primaries Chris Angelico <rosuav@gmail.com> - 2013-04-18 11:56 +1000
    Re: Atoms, Identifiers, and Primaries Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-17 21:10 -0600
  Re: Atoms, Identifiers, and Primaries Ian Kelly <ian.g.kelly@gmail.com> - 2013-04-17 01:21 -0600
    Re: Atoms, Identifiers, and Primaries 88888 Dihedral <dihedral88888@googlemail.com> - 2013-04-17 21:29 -0700
    Re: Atoms, Identifiers, and Primaries 88888 Dihedral <dihedral88888@googlemail.com> - 2013-04-17 21:29 -0700
  Re: Atoms, Identifiers, and Primaries Dave Angel <davea@davea.name> - 2013-04-17 07:07 -0400
  Re: Atoms, Identifiers, and Primaries Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-17 11:43 +0000
  Re: Atoms, Identifiers, and Primaries Bruce McGoveran <bruce.mcgoveran@gmail.com> - 2013-04-17 10:15 -0700
    Re: Atoms, Identifiers, and Primaries Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-18 04:43 +1000
      Re: Atoms, Identifiers, and Primaries rusi <rustompmody@gmail.com> - 2013-04-18 10:04 -0700

csiph-web