Langage M de la DGFiP
Langage M de la DGFiP
From Wikipedia, the free encyclopedia
Le langage M est un langage dédié utilisé par la direction générale des Finances publiques (DGFiP) pour calculer l'impôt sur le revenu en France[1],[2].
Description
Un code source écrit en langage M se compose de plusieurs "règles" valables dans différentes "applications".
Le langage comprend une vingtaine d'opérateurs arithmétiques ou logiques ainsi que des mécanismes de boucles.
Le langage permet de définir des règles de contrôle.
La mission Etalab a ouvert une grammaire du langage M et un interpréteur[3].
En 2019 et 2020, une initiative de l'Inria a permis de consolider le travail d'Etalab et rendre complètement opérationnel le langage M en dehors de la DGFiP. Un article de recherche[4] présente la sémantique formelle du langage, tandis qu'un compilateur éprouvé sur les jeux de tests de la DGFiP est disponible en open-source[5].
Exemple
Définition de la variable IRN (impôt sur les revenus) pour l'année 2015[6] :
regle 301000:
application : bareme , iliad , batch ;
IRN = min( 0, IAN + AVFISCOPTER - IRE ) + max( 0, IAN + AVFISCOPTER - IRE ) * positif( IAMD1 + 1 - SEUIL_61) ;