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-beta1-py2.5.zip (215.1 kB view hashes)

Uploaded Source

EasyExtend-3.0-beta1-py2.5.tgz (180.9 kB view hashes)

Uploaded Source

Built Distribution

EasyExtend-3.0-beta1.win32-py2.5.exe (326.6 kB view hashes)

Uploaded Source

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