Source

Functional, English-based language whose .mrsh files (declaration, description, examples) are compiled to tested Python by an LLM. Alpha implementation; last maintainer activity early Aug 2023.

Camp: Orchestration
Author: David Ellis (Alan Technologies)
Implementation language: Python
Compilation target: Python (generated by an LLM, with auto-generated tests)
Licence: MIT
First seen: July 2023
Maturity: early implementation

Key idea

Marsha's framing is that the LLM is the compiler. A .mrsh source file is a Markdown-shaped specification with three sections per function: a typed declaration, an English description, and a list of input/output examples. The Marsha toolchain prompts an LLM to produce Python that satisfies the declaration, uses the examples to synthesise a test suite, and iterates with corrective feedback until the tests pass or the attempt budget is exhausted.

The thesis.

Marsha's framing predates almost every other entry in the catalogue: the LLM is the compiler. A .mrsh source file is a Markdown-shaped specification with three sections per function — a typed declaration (# func name(InputType): OutputType), an English description of behaviour, and a bullet list of input/output examples including expected error cases. The Marsha toolchain prompts an LLM to generate Python that satisfies the declaration, uses the examples to synthesise a pytest suite, runs the suite, and iterates with corrective feedback until the tests pass or the configured attempt budget is exhausted. CLI flags (-a attempts, -n parallel "thought" threads, -q quick-and-dirty, --exclude-main-helper) expose the iteration parameters directly to the user. Generated programs ship with an auto-attached CLI wrapper and an optional REST-server mode (-s).

Published results.

The repository ships an alpha implementation, an examples directory (general-purpose, web-scraping, data-mangling), and a CI workflow that times compilations. The README's only quantitative target is its own roadmap: "We aim for 80%+ accuracy on our examples", with the roadmap looking to push that "above 90%". The compiler requires OPENAI_ORG and OPENAI_SECRET_KEY; support for other or local LLMs is listed as planned but unimplemented. The setup.py PyPI classifier is Development Status :: 2 - Pre-Alpha.

Status.

The repository is MIT-licensed, was launched alongside a Show HN post on 1 August 2023 (news.ycombinator.com item 36864021), and reached the high-hundreds in stars with around a dozen forks. The last maintainer activity on the main branch — pull requests #159–#164 from dfellis and issue #165 from depombo — is dated 1–8 August 2023 (PR #164 "Embed Llama.cpp into Marsha for local usage" opened 7 Aug 2023; issue #165 "Add LlamaCPP support" opened 8 Aug 2023); the project has received no further maintainer pull requests or issues since. Both principals subsequently moved on (David Ellis to IaSQL and later the Alan-lang project; Luis de Pombo's LinkedIn lists continued tenure at Alan Technologies). Marsha is catalogued because the "LLM is the compiler" framing it shipped in 2023 anticipates the 2025 orchestration papers in this camp, not because the alpha implementation is under active development.

Design DNA


Tags: language   ai   orchestration   python  

Last modified 15 June 2026