Skip to main content

Preprocessor generator for Python

Project description

Preprocessor generator for Python

EasyExtend (EE) is a preprocessor generator and metaprogramming framework written in pure Python and integrated with CPython. The main purpose of EasyExtend is the creation of extension languages i.e. adding custom syntax and semantics to Python. EasyExtend comes out of the box as a single package with no dependecies other than those to Pythons standard library.

Parser generator

EasyExtend provides a powerful parser generator for top down parsers called Trail. Trail parsers are trace based, non-backtracking parsers with one token of lookahead but the capability of an LL(k) parsers for arbitary k. Trails nondeterministic finite automata (NFAs) are used for multiple tasks: most obviously for parsing but also for lexical analysis, parse tree validation and generation of parse tree builders.

Blank slate programming languages

Besides the main goal of providing a system for generating extensions languages, EasyExtend can also be used to build languages from the scratch targeting Pythons virtual machine.

Source inspection and manipulation

EasyExtend provides csttools which is a library for inspection, modification and synthesis of parse trees.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

EasyExtend-3.0.2-py2.5.zip (546.7 kB view details)

Uploaded Source

EasyExtend-3.0.2-py2.5.tar.gz (483.8 kB view details)

Uploaded Source

Built Distribution

EasyExtend-3.0.2.win32-py2.5.exe (623.6 kB view details)

Uploaded Source

File details

Details for the file EasyExtend-3.0.2-py2.5.zip.

File metadata

File hashes

Hashes for EasyExtend-3.0.2-py2.5.zip
Algorithm Hash digest
SHA256 d80310499eb2dd167becc0bf81957d259163ebe88f33b008b3708fe39b03c2db
MD5 2af0e230664175738957df3f1b8a56b9
BLAKE2b-256 852c1040f09f2649464e733d4b1c476e186cf06c9db28251e9f2ead10a640602

See more details on using hashes here.

File details

Details for the file EasyExtend-3.0.2-py2.5.tar.gz.

File metadata

File hashes

Hashes for EasyExtend-3.0.2-py2.5.tar.gz
Algorithm Hash digest
SHA256 8e79acd315e2cceceea4d724e451e53baf0d836247d2296101056f60eb0412fa
MD5 2ba994a7c7910f7a8baf953bf5205541
BLAKE2b-256 b3e80a829f58ff6068f94edf74877f2e093aae945482c96ade683ef3cafdfcad

See more details on using hashes here.

File details

Details for the file EasyExtend-3.0.2.win32-py2.5.exe.

File metadata

File hashes

Hashes for EasyExtend-3.0.2.win32-py2.5.exe
Algorithm Hash digest
SHA256 aa2fce6ae847dd1d26178eb2f65b1bdc6325e352f54213ffba149a4b8b8cf04d
MD5 bacb605ad79119dfa2bbf01563a28220
BLAKE2b-256 34ae5a40c817269dd5d579cc85aca6484b54cb4be61e4a49fb374845b92b54ed

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page