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


Groups > comp.lang.python.announce > #3311

TatSu 5.0.0 released

Path csiph.com!weretis.net!feeder7.news.weretis.net!news.unit0.net!fu-berlin.de!uni-berlin.de!not-for-mail
From Juancarlo Añez <apalala@gmail.com>
Newsgroups comp.lang.python.announce
Subject TatSu 5.0.0 released
Date Tue, 28 Jan 2020 12:35:04 -0400
Lines 51
Approved python-announce-list@python.org
Message-ID <158023174760.28761.python-announce-list@python.org> (permalink)
Reply-To python-list@python.org
Mime-Version 1.0
Content-Type text/plain; charset="UTF-8"
Content-Transfer-Encoding quoted-printable
X-Trace news.uni-berlin.de pbSIX8P5T06txUBQyrNGIQgVwHFSKx1+W1/llBn9sEWw==
X-Spam-Status OK 0.010
X-Spam-Evidence '*H*': 0.98; '*S*': 0.00; 'string': 0.05; 'eventually': 0.07; 'first,': 0.07; '<>)': 0.09; 'ast': 0.09; 'skip:o 40': 0.09; 'solves': 0.09; 'tested': 0.09; 'url- ip:140.82.118.4/32': 0.12; 'url-ip:140.82.118/24': 0.12; 'url- ip:140.82/16': 0.12; 'url:wiki': 0.13; 'url-ip:140/8': 0.14; 'python': 0.14; '*a\xc3\xb1ez*': 0.16; '3.8.': 0.16; '8bit%:26': 0.16; 'algorithm': 0.16; 'a\xc3\xb1ez': 0.16; 'from:addr:apalala': 0.16; 'from:name:juancarlo a\xc3\xb1ez': 0.16; 'juancarlo': 0.16; 'parser': 0.16; 'received:mail-io1-xd2d.google.com': 0.16; 'skip:0 210': 0.16; 'skip:s 130': 0.16; 'subject:released': 0.16; 'url:library': 0.16; 'url:github': 0.18; 'missing': 0.19; 'url- ip:45.55.99.72/32': 0.19; 'url-ip:45.55.99/24': 0.19; 'skip:( 20': 0.20; "doesn't": 0.20; 'parse': 0.24; 'to:addr:python-announce- list': 0.24; '8bit%:19': 0.24; 'error': 0.24; 'url-ip:45.55/16': 0.26; 'import': 0.28; '<>.': 0.28; 'supported': 0.28; 'using': 0.28; 'url-ip:45/8': 0.29; '8bit%:50': 0.29; 'object': 0.29; 'sets': 0.29; 'url-ip:91.198.174.192/32': 0.29; 'url:7': 0.29; 'url-ip:151.101.36.223/32': 0.29; 'url-ip:151.101.36/24': 0.29; 'url:3': 0.30; 'message-id:@mail.gmail.com': 0.31; 'module': 0.33; 'received:google.com': 0.34; 'but': 0.34; 'from:addr:gmail.com': 0.36; 'versions': 0.36; 'used': 0.36; '8bit%:22': 0.37; 'should': 0.37; 'url-ip:151.101/16': 0.37; 'url-ip:151/8': 0.37; '8bit%:12': 0.37; 'url:en': 0.38; 'does': 0.38; '8bit%:14': 0.39; 'url:python': 0.39; 'include': 0.39; 'skip:l 10': 0.60; 'previous': 0.60; 'skip:t 30': 0.62; 'under': 0.62; 'enable': 0.62; 'remove': 0.62; 'left': 0.62; 'now,': 0.64; '8bit%:27': 0.64; 'skip:t 20': 0.65; 'improve': 0.65; 'skip:e 60': 0.67; 'url:issues': 0.67; 'url:re': 0.67; 'against': 0.67; 'url:info': 0.68; 'longer': 0.69; 'url-ip:lookup error': 0.70; 'skip:e 20': 0.72; '8bit%:7': 0.74; 'supports': 0.74; '8bit%:1': 0.84; '<ul': 0.84; 'skip:0 200': 0.84; 'skip:m 70': 0.84; 'skip:s 260': 0.84; 'skip:u 40': 0.84; 'variation': 0.84; 'grammar': 0.91
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=EBQJ3BD920rEFD/fURxzYi1jgkvs6DcYmtZvABDFpiI=; b=EZifPvUz2o+4O555GmoZblhOKN9PS3JEoZUZyHEJAM2mGOpVZZWRdwXPoZZhYipWza 2Kv5+EfaeJIgdq6pN0DTz71CjYzfkd8T2erTfwP73ClIOjOClX8wmRGZKuAD12CGajhN rFCM6NmGJPaMfidE/sKj//IMNfHQH2DYWXv5TWiwaG7z6Qb1ryUjEzXe9L7MwPvQuLpn juEQKi7+PsvjOi3mlT3LINtkVLvxs9lBL7SyyKg/iw9AFsWN61yNeEWmPdUC70qihqv3 5wnGRuL6G0C4P3OdPIKsPE799pmfWqJrNjJUGokvWWarZ0wNkugRgWiFKPXWW75ff/te EKSA==
X-Google-DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=EBQJ3BD920rEFD/fURxzYi1jgkvs6DcYmtZvABDFpiI=; b=ZdBhA/Pk/8GQoncosMCN+dMEXemJC8ZxeyKsv07HztaCqbghdHxbAfwHXxnG4Uq7Ud f0DUNuZ3p8zR0NUGI8ckNKmTgCQlgW+tyJSGioZ/YPIM4uKeGA6K9HYFyAubrZ0by5w4 tV8av0XWb6BmrOkPLpeIKiYMt0d72pZHHnw9CQqzopEBFySqVyW/caxKrPytUZ62XW0K bsgP1ctXajPvint7TAVuBffG0/eWzmFWuSKTb2KY+nuQWPcxq+yaiE5twr9Ldzuz1GtY 9IpwBcCTeCi4/XDU6Y/6r8N6VSfKC17QPwajwZvK3sk5ZKJaqmrV4wbVkNf6mNNaKkvY QP0g==
X-Gm-Message-State APjAAAVjkMOoQBHaenf9hsZLg6C+mZPdg9hd3dXQbGBPnTVI4W+LDrtj 3t7fHdYhbLHhNBTaQ3QwiKro6uISk34Y5BxlL3QwjJHlwmo=
X-Google-Smtp-Source APXvYqzs7GLyM+TYen7d1CtO4wsALPN99m4AezyFdsBM7k78EXlgq/lPGOXnr1bPI+5bByUvI5b4SScfnnsptQ1UDoA=
X-Received by 2002:a5e:8a4a:: with SMTP id o10mr8456848iom.99.1580229315722; Tue, 28 Jan 2020 08:35:15 -0800 (PST)
X-MailFrom juancarlo.anez@gmail.com
X-Mailman-Rule-Hits emergency
X-Mailman-Rule-Misses dmarc-mitigation; no-senders; approved
Message-ID-Hash DNDTMHLPLGCEAD657RVIHX5CUFQNTAXX
X-Message-ID-Hash DNDTMHLPLGCEAD657RVIHX5CUFQNTAXX
X-Mailman-Approved-At Tue, 28 Jan 2020 12:15:34 -0500
X-Content-Filtered-By Mailman/MimeDel 3.3.1
X-Mailman-Version 3.3.1
Precedence list
List-Id Announcement-only list for the Python programming language <python-announce-list.python.org>
Archived-At <https://mail.python.org/archives/list/python-announce-list@python.org/message/DNDTMHLPLGCEAD657RVIHX5CUFQNTAXX/>
List-Archive <https://mail.python.org/archives/list/python-announce-list@python.org/>
List-Help <mailto:python-announce-list-request@python.org?subject=help>
List-Post <mailto:python-announce-list@python.org>
List-Subscribe <mailto:python-announce-list-join@python.org>
List-Unsubscribe <mailto:python-announce-list-leave@python.org>
Xref csiph.com comp.lang.python.announce:3311

Show key headers only | View raw


竜 TatSu is a tool that takes grammars in a variation of EBNF
<http://en.wikipedia.org/wiki/Ebnf> as input, and outputs memoizing
<http://en.wikipedia.org/wiki/Memoization> (Packrat
<http://bford.info/packrat/>) PEG
<http://en.wikipedia.org/wiki/Parsing_expression_grammar> parsers in Python
<http://python.org/>.

竜 TatSu can compile a grammar stored in a string into a
tatsu.grammars.Grammar object that can be used to parse any given input,
much like the re <https://docs.python.org/3.7/library/re.html> module does
with regular expressions, or it can generate a Python
<http://python.org/> module
that implements the parser.

竜 TatSu supports left-recursive
<https://en.wikipedia.org/wiki/Left_recursion> rules in PEG
<http://en.wikipedia.org/wiki/Parsing_expression_grammar> grammars using
the algorithm <http://norswap.com/pubs/sle2016.pdf> by *Laurent* and *Mens*.
The generated AST <http://en.wikipedia.org/wiki/Abstract_syntax_tree> has
the expected left associativity.
<https://github.com/neogeny/TatSu#installation>*CHANGES*


   - 竜 TatSu is now only tested against Python 3.8. Earlier versions of
   Python are now deprecated, and Python 2.X versions are no longer supported (
   @apalala <https://github.com/apalala>).
   - Apply nameguard only if token[0].isalpha(). This solves a regression
   afecting previous TatSu and Grako grammars (@apalala
   <https://github.com/apalala>).
   - Remove pygraphviz from develoment requirements, as it doesn't build
   under Py38 (@apalala <https://github.com/apalala>)
   - #56 <https://github.com/neogeny/TatSu/issues/56> Include missing
   tatsu/g2e/antlr.ebnf in distribution (@apalala
   <https://github.com/apalala>)
   - #138 <https://github.com/neogeny/TatSu/issues/138> Reimplement the
   calculation of FIRST, FOLLOW, and LOOKAHEAD sets using latest theories.
   For now, this should improve parser error reporting, but should eventually
   enable the simplification of parsing of leftrec grammars (@apalala
   <https://github.com/apalala>).
   - #153 <https://github.com/neogeny/TatSu/issues/153> Import ABCs from
   collections.abc (@tirkarthi <https://github.com/tirkarthi>)
   - Remove support for Cythonand pypy3 (@apalala
   <https://github.com/apalala>).


-- 
Juancarlo *Añez*

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


Thread

TatSu 5.0.0 released Juancarlo Añez <apalala@gmail.com> - 2020-01-28 12:35 -0400

csiph-web