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


Groups > comp.lang.python > #63680

Re: With this artifact, everyone can easily invent new languages

Path csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!ecngs!feeder2.ecngs.de!novso.com!newsfeed.xs4all.nl!newsfeed1.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail
Return-Path <rosuav@gmail.com>
X-Original-To python-list@python.org
Delivered-To python-list@mail.python.org
X-Spam-Status OK 0.027
X-Spam-Evidence '*H*': 0.95; '*S*': 0.00; 'compiler': 0.07; 'parser': 0.07; 'second.': 0.09; 'cc:addr:python-list': 0.11; 'jan': 0.12; 'language,': 0.12; '11:59': 0.16; 'chaos': 0.16; 'from:addr:rosuav': 0.16; 'from:name:chris angelico': 0.16; 'rather,': 0.16; 'simeon': 0.16; 'subject:everyone': 0.16; 'task.': 0.16; 'sat,': 0.16; 'language': 0.16; 'wrote:': 0.18; 'implementing': 0.19; 'programming': 0.22; 'rules': 0.22; 'cc:addr:python.org': 0.22; 'parse': 0.24; 'decide': 0.24; 'cc:2**0': 0.24; 'define': 0.26; 'header:In-Reply-To:1': 0.27; 'am,': 0.29; 'change,': 0.30; 'message-id:@mail.gmail.com': 0.30; 'code': 0.31; 'critical': 0.32; 'languages': 0.32; 'another': 0.32; 'tool': 0.35; 'etc': 0.35; 'received:google.com': 0.35; 'there': 0.35; 'are,': 0.36; 'library.': 0.36; 'like,': 0.36; 'too': 0.37; 'two': 0.37; 'implement': 0.38; 'subject:new': 0.38; 'fact': 0.38; 'does': 0.39; 'extremely': 0.39; 'subject:can': 0.39; 'how': 0.40; 'solve': 0.60; 'most': 0.60; 'till': 0.61; 'new': 0.61; 'first': 0.61; 'techniques': 0.66; 'technology,': 0.70; 'special': 0.74; 'hand': 0.80; 'subject:this': 0.83; 'theories': 0.84; 'divided': 0.91; 'to:none': 0.92; 'subject:With': 0.93
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:cc :content-type:content-transfer-encoding; bh=tRBnxpYKCIEfVc2315DnEHDuSimew+kiT2r/wzu+nsk=; b=rYFJSNidb+uLQvnmbptsptF2T/69VF9tRTURUp9pKwnYDEjUxwIxAeBpuS1LViPBfS rZRxsFGQjyyJ0a8JRHm/2hXJlUAm4RMOg8UY94qkVSoldDhZYsa2AmRIyH8OB2G2j1wM ZxcF76at8K61G0XxI+1nn+SevXBpxJgs27OnkXAObpliN0MCdPv9H1a23Ap/9FPGcdYW VdfsPt8wCXbIwv/v24gDLJdi808fgITydBBZ73P42FmMaHZfCeR536K73xzm2E1FIiBW ggqx9rOfu2k+J50exv6zII64rv0SSCRGXB1DMphhpMa2dET2c6V1m3UgMbfYDkCmDrPm yb4g==
MIME-Version 1.0
X-Received by 10.66.129.133 with SMTP id nw5mr15455969pab.98.1389406653275; Fri, 10 Jan 2014 18:17:33 -0800 (PST)
In-Reply-To <629488f0-0516-492e-8dcf-1fea9a53e383@googlegroups.com>
References <629488f0-0516-492e-8dcf-1fea9a53e383@googlegroups.com>
Date Sat, 11 Jan 2014 13:17:33 +1100
Subject Re: With this artifact, everyone can easily invent new languages
From Chris Angelico <rosuav@gmail.com>
Cc "python-list@python.org" <python-list@python.org>
Content-Type text/plain; charset=UTF-8
Content-Transfer-Encoding quoted-printable
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 <https://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 <https://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe>
Newsgroups comp.lang.python
Message-ID <mailman.5315.1389406662.18130.python-list@python.org> (permalink)
Lines 23
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1389406662 news.xs4all.nl 2887 [2001:888:2000:d::a6]:40444
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python:63680

Show key headers only | View raw


On Sat, Jan 11, 2014 at 11:59 AM, Simeon Chaos <simeon.chaos@gmail.com> wrote:
> All along, the design of programming languages is a complex task. Because we need to understand the esoteric compiler theory and technology, and one of the most critical and very difficult part is to define the rules of the new language and to parse with them.To solve this problem, there have been many theories , techniques and tools . These tools can be roughly divided into two categories: one is parser generator, another is to write the parser by hand with or without a parser library.
>

No tool will change the fact that the *design* of a language is a
complex task. Long before you get to implementing anything, you have
to decide what your language will look like, what its special features
are, how it distinguishes one thing from another, etc etc etc. That
work won't change based on the tool you use - or rather, if it DOES
change, it's because the tool is too restrictive. First write some
code in your new language, then and only then work out how to
implement an interpreter/compiler. The first part of the job is pretty
complex (and extremely important), and tools don't come into play till
the second.

ChrisA

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


Thread

With this artifact, everyone can easily invent new languages Simeon Chaos <simeon.chaos@gmail.com> - 2014-01-10 16:59 -0800
  Re: With this artifact, everyone can easily invent new languages Chris Angelico <rosuav@gmail.com> - 2014-01-11 13:17 +1100
    Re: With this artifact, everyone can easily invent new languages Simeon Chaos <simeon.chaos@gmail.com> - 2014-01-10 21:43 -0800
      Re: With this artifact, everyone can easily invent new languages "James Harris" <james.harris.1@gmail.com> - 2014-01-11 07:47 +0000
        Re: With this artifact, everyone can easily invent new languages Simeon Chaos <simeon.chaos@gmail.com> - 2014-01-11 01:12 -0800
          Re: With this artifact, everyone can easily invent new languages "James Harris" <james.harris.1@gmail.com> - 2014-01-11 15:45 +0000

csiph-web