Skip to main content

A programming language that reads like plain English. Zero syntax friction, native Python speeds.

Project description

📖 Prose

Programming in plain English. No brackets, no semicolons, no cryptic symbols.


Prose is a programming language designed to read like natural language. It removes the syntax barriers that stop beginners from learning to code, while packing enough power to build desktop apps, work with databases, and crunch numbers at Python speeds.

Note: This is actual, working code.
Let sentence be "the quick brown fox".
Let words be split sentence by " ".

For each word in words do the following.
    If word contains "fox" then do the following.
        Say "Found it!".
    End if.
End for.

⚡ Why Prose?

1. Zero Syntax Friction

Most beginners fail because they miss a semicolon or forget a closing bracket. Prose has zero symbolic syntax. Every instruction is a sentence that ends with a full stop " .".

2. Two Gears: Simple and Blazing Fast

Prose comes with two ways to run your code:

  • Interpreter (prose.py): Tree-walking interpreter giving instant, friendly feedback and excellent error messages. Great for beginners.
  • Transpiler (prose.py build): Compiles your Prose code directly into native Python script, unleashing the full speed of the CPython Engine.

3. Serious Power Included

Prose isn't a toy. Out of the box, it supports:

  • Native desktop window GUIs
  • An embedded SQLite database
  • File I/O
  • HTTP networking
  • Object-Oriented Programming (Classes & Inheritance)

🏎️ Performance Benchmarks

When using the Prose Transpiler (build mode), your code runs at native Python speed. Here is how Prose (Transpiled) holds up against Python 3 and Node.js for fundamental operations.

Test Python 3 Node.js Prose (Interpreter) Prose (Transpiled)
Fibonacci (Pure recursion) 0.113s 0.051s 1.915s 0.076s
Prime Sieve (Nested loops) 0.042s 0.045s 28.070s 0.678s
Bubble Sort (Swap ops) 0.080s 0.049s 0.179s 0.039s
Word Frequency (Dict ops) 0.038s 0.045s 0.098s 0.068s

Note: The ~0.03s-0.07s floor on these tests represents process startup overhead. Prose Transpiled is generating 1:1 pure Python source code.


🚀 Getting Started

No npm install, no pip install. You just need Python 3.9+ on your system.

git clone https://github.com/eres45/Prose.git
cd Prose

Run an example:

python prose.py samples/01_hello.prose

� Documentation & Guides

We've written a complete, beginner-friendly 5-part guide to take you from printing "Hello" to building database-backed GUI apps.

  1. Part 1: Getting Started — Variables, running code
  2. Part 2: Variables & Logic — Math, conditions, strings
  3. Part 3: Loops & Lists — Iteration and filtering
  4. Part 4: Functions & Files — Reuse, HTTP, File I/O
  5. Part 5: Advanced Features — GUIs, Databases, Classes, Async

🛠️ The VS Code Extension

Prose comes with a native syntax highlighter for VS Code.

  1. Copy the vscode-extension folder to your VS Code extensions directory (~/.vscode/extensions/ on Mac/Linux or %USERPROFILE%\.vscode\extensions\ on Windows).
  2. Restart VS Code.
  3. Enjoy full syntax highlighting for all .prose files!

🤝 Contributing

Prose is open-source. Whether you're adding new standard library modules or improving the parser, pull requests are incredibly welcome!

Project details


Download files

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

Source Distribution

prose_lang-1.0.0.tar.gz (45.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

prose_lang-1.0.0-py3-none-any.whl (45.9 kB view details)

Uploaded Python 3

File details

Details for the file prose_lang-1.0.0.tar.gz.

File metadata

  • Download URL: prose_lang-1.0.0.tar.gz
  • Upload date:
  • Size: 45.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.3

File hashes

Hashes for prose_lang-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1bfa1c409e838d95e6e3f4cc2be43cc4e3822c19907fdcc5ede45051a68a630a
MD5 eb48cbfd2eb8c4ac717f411b9dcfc9a3
BLAKE2b-256 08c9eb5bf22efee468c8e0dc7dea1c67671303bf29ed0c54c23a7c16725046b4

See more details on using hashes here.

File details

Details for the file prose_lang-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: prose_lang-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 45.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.3

File hashes

Hashes for prose_lang-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e8ba60d04e3fc552e6865a7627933288675e9bb975d3209bb41dc07ab71246d5
MD5 e9a0e6574406f517da9bd609ff7e5c98
BLAKE2b-256 9b88ec0da6fc2ad432dc3815c83df62840146b7a4c7ac82de357b02d347bbf47

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page