Skip to main content

An expression-oriented, tooling-focused language that compiles down to Python.

Project description

Build Status

Development

Setup

The Pytch compiler is currently written in Python 3.7.

To install the development environment, run

$ poetry install

Running

To launch the REPL:

$ poetry run pytch repl

To execute a file as a Pytch script:

$ poetry run pytch run file.pytch

Updating the syntax trees

To modify the syntax tree node types, update pytch/syntax_tree.txt, then run:

$ ./bin/generate_syntax_trees.sh

Fuzzing the parser

To run the fuzzer on the Pytch parser, first be sure that the AFL fuzzer is installed (e.g. with brew install afl-fuzz). Next, install the fuzzing dependencies:

$ poetry install --extras fuzz

Then you can run:

$ ./bin/fuzz.sh

Project details


Download files

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

Files for pytch, version 0.0.1
Filename, size File type Python version Upload date Hashes
Filename, size pytch-0.0.1.tar.gz (41.7 kB) File type Source Python version None Upload date Hashes View
Filename, size pytch-0.0.1-py3-none-any.whl (194.9 kB) File type Wheel Python version py3 Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page