reStructuredPython is a superset of Python designed to bring clarity, structure, and modularity to your codebase. It builds on Python’s strengths while introducing powerful features like header files, function chaining, and curly-brace blocks—all without sacrificing readability.
- ✅ Readable, Structured Syntax — Use
{}braces for control flow, no ambiguous indentation - 📦 Modular Programming — Split logic into
.repyand.cdatafiles with easyinclude - 🔗 Function Chaining — Chain transformations with
|>for expressive pipelines - 📄 Header Files — Define reusable APIs and utilities in clean
.cdatablocks - 🛠️ Custom Compiler — Compile structured Python into native
.pycode - 🌐 Cross-Platform — Works anywhere Python runs
mathutils.cdata
def square(x) {
return x * x
}
def cube(x) {
return x * x * x
}main.repy
include 'mathutils.cdata'
def greet(name) {
return "Hello, " + name
}
if __name__ == '__main__' {
name = "Rihaan"
print(greet(name))
x = 5
result = x |> square |> cube
print("Result:", result)
}
To download the reStructuredPython compiler using the python package index:
pip install --upgrade restructuredpythonDownload our vscode extension with intellisense support from the visual studio marketplace
To use the reStructuredPython compiler:
repy path/to/your/file.repyExplore the syntax guide, chaining rules, and .cdata structure:
Please contribute and raise issues! We just started and this is a pioneering project. Fork the repository, make your changes, update the documentation in the docs/* folder, add examples (if applicable) in the tests/.repy and their compiled versions in tests/.py directory as well as in docs/source/tutorials/programs and in docs/source/tutorials/compiled_programs. Once you have ensured all features work of the compiler by test-compiling the other files in tests/.repy/*, make a pull request with the github issue number is applicable, short concise title and description of your changes. Warining: The first paragraph of the pull request description will go to be part of the changelong, so keep it short and clear. PLEASE DO NOT label your changes as a new version. That will be done manually or by a bot.
View the changelog at https://restructuredpython.readthedocs.io/en/latest/changelog.html
These mistakes will reslut in a syntax error thrown by the REPY compiler or invalid python. View the error index at https://restructuredpython.readthedocs.io/en/latest/compiler/error_index/