Skip to content

fogelman/compiler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

compyler

A revolutionary language to make your life harder. Implemented with rply + llvmlite

Build Status

Documentation

All documentation and examples can be found here

Requirements

python >= 3.x
make >= 4.x
pip

Setup

pip install -r requirements.txt

Test

All tests are listed in ./tests/tests.json

make test

Run

python main.py program.x output.o
gcc output.o -o output
./output

EBNF

The EBNF can be found at ./ebnf.md

Project Structure

compyler/
├── __init__.py
├── assembler.py
├── lexer.py
├── node.py
├── parser.py
└── symboltable.py

References

Pykaleidoscope

Printf implementation

Using RPython and RPly to build a language interpreter

Writing your own programming language and compiler with Python

Python's full Grammar specification

joshsharp/python-braid lexer.py

radk0s/ply SymbolTable.py

zjl233/moe parser.py