Skip to main content

Machine Dialect™ - Natural language programming in Markdown

Project description

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 greeting as Text.
Set greeting to "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.

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

machine_dialect-0.1.0a1.tar.gz (490.2 kB view details)

Uploaded Source

Built Distribution

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

machine_dialect-0.1.0a1-py3-none-any.whl (577.4 kB view details)

Uploaded Python 3

File details

Details for the file machine_dialect-0.1.0a1.tar.gz.

File metadata

  • Download URL: machine_dialect-0.1.0a1.tar.gz
  • Upload date:
  • Size: 490.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for machine_dialect-0.1.0a1.tar.gz
Algorithm Hash digest
SHA256 201005bcc0cc6bebbc2ff3c5fb86891d9a4f9db6f1b77c3e2b715ca7d9bd2fb3
MD5 307d96e0cc0240a0d0976247b486fa7a
BLAKE2b-256 5ec49f66b87f1bb7c3a4a64a3ca68023936b77d7b2c80d2ca8dcdf2c4954fd0a

See more details on using hashes here.

File details

Details for the file machine_dialect-0.1.0a1-py3-none-any.whl.

File metadata

File hashes

Hashes for machine_dialect-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 173a718f5b8ad48d7a7653331218b2675b9f4c75018e38ef1110674c38d154de
MD5 7d0af29dbf7cba4586a3f1f3f0db4f55
BLAKE2b-256 41764f2caa45b94c03b199daf48123cb89ee6d4601e186c0f7b6a77790cb80fa

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