Einführung
FinDSL ist eine domänenspezifische Sprache (DSL) für die deutsche steuerliche Finanzverwaltung. Man schreibt Steuerlogik in einer Sprache mit deutschen Schlüsselwörtern (fn, wähle, falls, prüfe, testfall …), die sich wie strukturiertes Gesetz liest — nicht wie Programmiersprache.
Gesetz als Code — lesbar für Fachexperten, ausführbar für Systeme.
Das Versprechen
Abschnitt betitelt „Das Versprechen“Steuerrecht wird lesbar (für Fachexpert:innen), prüfbar (wie ein Test) und ausführbar (für Systeme) — aus einer einzigen Quelle, ohne Drift zwischen Gesetz, Dokumentation und Code.
Für wen
Abschnitt betitelt „Für wen“FinDSL richtet sich an drei Gruppen:
- Sachbearbeiter:innen & Fachreferent:innen — wollen lesen, nachvollziehen und mit dem Gesetz abgleichen. Kein Programmierhintergrund nötig.
- IT & Projektleitung der Verwaltung — fragen nach Wartbarkeit, Integration, Auditierbarkeit und Unabhängigkeit von Anbietern.
- Entscheider:innen (Finanzministerium) — fragen nach Rechtssicherheit, Kosten und Digitalstrategie.
Eine Quelle, viele Artefakte
Abschnitt betitelt „Eine Quelle, viele Artefakte“Aus einer FinDSL-Quelle entstehen automatisch:
- Ausführbarer Code — Java, TypeScript, JavaScript
- Dokumentation — Markdown, HTML und PDF aus den Markdown-Doc-Kommentaren (Bundessteuerblatt-ähnliches Layout)
- Programmablaufpläne — DIN-66001-nahe Diagramme, wie sie die Finanzverwaltung heute von Hand pflegt
- Prüf-/Testfälle —
prüfe-/testfall-Blöcke, die bit-genau gegen einen Referenz-Interpreter laufen (bestanden = grün, Abweichung = rot)
Welcher Weg ist meiner?
Abschnitt betitelt „Welcher Weg ist meiner?“Offen & unabhängig
Abschnitt betitelt „Offen & unabhängig“FinDSL steht unter der EUPL-1.2 — auditierbar, air-gapped-fähig und ohne Vendor-Lock-in. Quelltext, Beispiele und Werkzeuge sind frei verfügbar.
Diese Doku richtet sich an Anwender:innen. Wer am FinDSL-Compiler selbst mitwirken möchte, findet alles dazu im Haupt-Repository (CONTRIBUTING).