docs← Back to article

Markdown for LLMs

M / Mlang

The source Markdown for this article. Copy it into your assistant or download it as a text file.

Download this articlePlain text ↗
# M / Mlang

**In short:** Mlang is the compiler the French tax administration's own
programs pass through; Arxo models what the code article says. The
comparison is administration-versus-text fidelity on fixed inputs. This
page is for readers who compute French income tax and need the exact
semantic seams: undefined values, number representation, and yearly
editions.

## What Mlang is for

Mlang compiles DGFiP's legacy tax language M: yearly administration
sources plus a fixed-format test language with year fields, several
backends (interpreter, C, Python) from one codebase, reproducible binary
releases with asset hashes, and validation claimed against the
administration's private suite. Its core carries a mechanically checked
semantics with verbatim undefined-value rules instead of ad hoc nulls —
the strongest formal claim in this section.

## Where it meets Arxo

Both sides compute French income tax on fixed inputs — the
administration's program against a model written from the code article
text — with sums compared after the statute's rounding rule. The studied
fragment is one marginal bracket with family quotient and rounding;
deontics, presumptions, article-level provenance, and judgment requests
are out of this calculator language's purpose, and out of the comparison.

## Key differences

- **Undefined is a language property with fixed rules.** Addition and
  subtraction absorb it, multiplication and comparisons propagate it,
  min-max treat it as zero, division by zero yields zero, branching on it
  yields it. Arxo refuses on missing facts. Fixed semantic pairs, not
  matches — the contract lists them before any run.
- **Numbers are administration fidelity.** Binary floating point by
  default, "what the administration uses", with precision flags; rounding
  primitives are identity stubs in the formalization. Arxo money is exact
  decimal. Compare after the statute's rounding, never before.
- **Each year is a separate source drop**, not a language revision
  construct. Edition comparison here means swapping yearly drops and
  drivers, and one edit case tests driver invariance rather than law.
- **The administration thesis is currently untestable in public.** The
  yearly administration sources have no public project and their license
  is undetermined; the private validation suite is author-stated, not
  verified here. The page narrows every dependent claim accordingly.

## A concrete scenario

Twelve fragment cases — mid-bracket, exact thresholds plus and minus one
euro, zero, negative, and missing income, split family parts, half-euro
rounding, a zero-parts control — plus three edits: a scale-year change, a
discount on and off, a driver-generation swap. Totals compare side by side;
the upper bracket is honestly outside the micro-model.

## Choosing and combining

Choose Mlang when the deliverable must match the administration's own
computation bit for bit, with a checked core behind it. Look to Arxo when
the question is what the article text supports — including refusal where
the text is silent — with dated editions and reviewable grounds. Combined,
the compiler holds administration fidelity while Arxo holds textual
fidelity, and their divergence points are exactly where a reviewer should
look.

## Evidence and open questions

- Sources checked: September 2026, second pass (repository, formal
  semantics file, release assets with hashes, the semantics paper, and
  administration brochures).
- Studied profile: the compiler at its release pin; the yearly
  administration sources are not publicly available and unfrozen.
- Basis: confirmed by documentation plus a prepared protocol; comparative
  run not performed, with no subject-package on the Arxo side beyond the
  unexecuted stand.
- Open: source availability and licensing, production-transition and
  private-suite claims, and the run itself.

## Sources and reproducible materials

- Compiler project:
  [github.com/MLanguage/mlang](https://github.com/MLanguage/mlang)
- Formal semantics paper: [arxiv.org/abs/2011.07966](https://arxiv.org/abs/2011.07966v1)