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.1-py2.5.zip (546.1 kB view details)

Uploaded Source

EasyExtend-3.0.1-py2.5.tgz (491.4 kB view details)

Uploaded Source

Built Distribution

EasyExtend-3.0.1.win32-py2.5.exe (622.9 kB view details)

Uploaded Source

File details

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

File metadata

File hashes

Hashes for EasyExtend-3.0.1-py2.5.zip
Algorithm Hash digest
SHA256 e8218d40780faccf0defb80384793ff43de46852f6afa732d17ead61ae2c8284
MD5 43425fab3123a41ec2c77c9eba5097e8
BLAKE2b-256 e7780d344622f7b851b3d663329d483e79ca7bc2183b0dcd1a7126170ed8f34e

See more details on using hashes here.

File details

Details for the file EasyExtend-3.0.1-py2.5.tgz.

File metadata

File hashes

Hashes for EasyExtend-3.0.1-py2.5.tgz
Algorithm Hash digest
SHA256 0ef8d7eb268f8c07cb2c7e7ea3107993b10203bf76c71b0f44761c0ac0a71f27
MD5 d1db0f0f49afaaeb2c68a61ac6ec5e63
BLAKE2b-256 226fc3b8712b557db0c08bfecb5d4e09556ffe9c1999b7059bb66af7368381d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for EasyExtend-3.0.1.win32-py2.5.exe
Algorithm Hash digest
SHA256 9d58ba28a2b3f9275763661137814fd4f26eda87e80ec4819aebfbf3fe856718
MD5 2f7902973f018ed8951a45ccfa28ca6e
BLAKE2b-256 c7d0d3d5221072faaa257e9a224aa69ce68d08234bb78d49fe2da4fa1ce03e8d

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