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


Release history Release notifications

This version
History Node

3.0.2

History Node

3.0.1

History Node

3.0-beta2

History Node

3.0-beta1

History Node

2.0-beta1

History Node

2.0-alpha1

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
EasyExtend-3.0.2-py2.5.tar.gz (483.8 kB) Copy SHA256 hash SHA256 Source None Sep 28, 2009
EasyExtend-3.0.2-py2.5.zip (546.7 kB) Copy SHA256 hash SHA256 Source None Sep 28, 2009
EasyExtend-3.0.2.win32-py2.5.exe (623.6 kB) Copy SHA256 hash SHA256 Windows Installer 2.5 Sep 28, 2009

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page