This release is a pre-release and may not be stable for production use.
Machine Dialect™
The Machine Dialect™ programming language is designed to look like natural language and feel like structured documentation. It is written in Markdown and intended to be both human-friendly and AI-native — readable by people, generatable and parsable by machines.
⚠️ ALPHA VERSION ⚠️
The Machine Dialect™ language is currently in ALPHA stage. We are rapidly iterating on the language design and implementation. During this phase:
- Breaking changes will be frequent and without deprecation warnings
- The syntax and semantics are still evolving based on user feedback
- APIs and compiler behavior may change between any versions
- No backward compatibility is maintained during alpha
We encourage experimentation and feedback, but please be aware that code written today may require updates to work with future versions.
Table of Contents
Why Another Programming Language?
Modern programming languages were made for humans to instruct machines. But now that machines can understand and generate human-like language, it's time to rethink the language itself.
The Machine Dialect™ language is designed for a world where:
- AI writes most of the code, and humans supervise, modify, and approve
- Code is visually readable, even by non-programmers
- The structure of the program is as intuitive as a document, and lives comfortably inside Markdown files
The Philosophy of Machine Dialect™
- Natural structure: Programs are written as paragraphs, headings, lists — not brackets, semicolons, and cryptic symbols
- AI-first: Syntax is deterministic enough for parsing, but optimized for LLMs to generate and understand effortlessly
- Human-friendly: Uses everyday words over technical jargon. Markdown keeps everything readable, diffable, and renderable
- Self-documenting: Looks like pseudocode. Reads like an explanation of what the code does
Installation
From PyPI (Recommended)
pip install machine-dialect
From Source
For development installation, please see our Contributing Guide for detailed setup instructions.
Getting started
Writing Your First Program
Create a file hello.md:
Define
greetingas Text.
Setgreetingto "Hello, World!".Say
greeting.
Compiling and Running Programs
The Machine Dialect™ toolchain provides a complete toolchain for compiling and executing programs:
# Compile a .md file to bytecode (.mdbc)
python -m machine_dialect compile hello.md
# Compile with custom filename (main)
python -m machine_dialect compile hello.md -o main.mdbc
# Run a compiled bytecode file
python -m machine_dialect run hello.mdbc
# Interactive shell (REPL)
python -m machine_dialect shell
Contributing
We welcome contributions! Please see our Contributing Guide for detailed information.
License
This project is licensed under the Apache License, Version 2.0 - see the LICENSE file for details.
Metadata
Release files for machine-dialect 0.1.0a2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| machine_dialect-0.1.0a2.tar.gz | 487.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| machine_dialect-0.1.0a2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.1 MB
Release files / machine_dialect-0.1.0a2.tar.gz
| Download URL | machine_dialect-0.1.0a2.tar.gz |
|---|---|
| Size | 487.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
57e689d34b1c1d37e8688885397997ae02a2a15dc9f9e2523eebd134f6f42869
|
|
BLAKE2b-256 checksum How to use checksums |
8d1a55e425e24e7f6457595fffbcb5800d861c03e98910260419ab8e30079a53
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / machine_dialect-0.1.0a2-py3-none-any.whl
| Download URL | machine_dialect-0.1.0a2-py3-none-any.whl |
|---|---|
| Size | 577.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e258accaba620ec481134a322ef7611f77e6a00c5211abb9c3e6c3814600304c
|
|
BLAKE2b-256 checksum How to use checksums |
65c42fd976f525117d2311d975c15a2b9eebfd80fb65300bc0c4c084f30481fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|