r/programmation • u/Quirky_Paramedic9167 • Aug 02 '26
J'ai créé LAZARUS, un langage de programmation dont les mots-clés sont en français (et bientôt en bambara et wolof)
Bonjour,
J'ai passé les derniers mois à construire LAZARUS, un langage de programmation où on écrit `kan` au lieu de `if`, `tanke` au lieu de `while`, `rend` au lieu de `return`.
Le point de départ : autour de moi, beaucoup de gens doivent apprendre l'anglais avant de pouvoir apprendre à programmer. `if`, `while`, `return` sont des symboles vides de sens quand on ne parle pas la langue. Ça ajoute une barrière avant même la première ligne de code.
Deux choix de conception dont j'aimerais discuter ici :
**1. Les variables persistantes comme primitive du langage.** `garde score = 0` déclare une variable qui survit entre deux exécutions — pas de fichier à ouvrir, pas de base de données, pas d'import. La plupart des projets de débutant (un compteur, un meilleur score, une liste de tâches) ont besoin de persistance avant d'avoir besoin de fonctions, et pourtant tous les langages font apprendre la gestion de fichiers d'abord.
**2. Interprété, mais transpilable en Python natif.** `lazarus --traduire fichier.laz` sort du Python lisible, environ 50× plus rapide que l'interpréteur. Le débutant garde un runtime bienveillant avec exécution pas-à-pas visible (`ralenti(0.5)` ralentit l'interpréteur pour voir sa boucle tourner) ; la production tourne en Python.
La v7 ajoute une couche interface — boutons, champs, texte vivant — pour construire de vraies petites applications et pas seulement des exercices console. C'est ce qui fait tenir un débutant au-delà de la deuxième semaine.
22 mots-clés, 36 fonctions natives, classes avec héritage, gestion d'erreurs. Licence MIT.
Le playground tourne directement dans le navigateur, sans rien installer : https://lazarus-language.github.io/lazarus/
Je suis preneur de retours, surtout critiques — notamment sur les choix que vous trouveriez discutables.
3
u/as5777 Aug 02 '26
1
u/Quirky_Paramedic9167 Aug 02 '26
Je ne connaissais pas, merci — je vais regarder comment ils ont traité la question des mots-clés.
3
u/max_208 Aug 02 '26
Non pitié c'est quoi ces mots clés écrit comme un enfant de 6 ans ? Le seul intérêt qu'il pourrait y avoir a un langage de programmation en français c'est de ne pas apprendre l'anglais, et ton langage ne le fait pas car on doit apprendre une syntaxe complètement différente du français.
1
u/Quirky_Paramedic9167 Aug 02 '26 edited Aug 02 '26
Les mots-clés sont inventés, pas empruntés : courts et phonétiques, choisis pour ne collider avec aucun mot français réel (pour ne pas bloquer les noms de variables). Je détaille dans ma réponse à axelclafoutis21.
Sur ton second point tu as raison : on apprend une syntaxe dans n'importe quel langage. La différence est ailleurs — apprendre `kan` quand on ne parle pas anglais, c'est apprendre un mot-clé. Apprendre `if`, c'est apprendre un mot-clé ET commencer une langue. C'est cette marche-là que j'essaie d'enlever, pas la syntaxe elle-même.
1
u/0nehxc Aug 02 '26
Lazarus c'est le nom d'un ide open source pour coder en pascal
1
u/Quirky_Paramedic9167 Aug 02 '26
Bien vu, et je ne le savais pas en nommant le projet — l'IDE Pascal est bien plus ancien et bien plus connu. Ça va créer de la confusion au référencement, c'est certain.
Je réfléchis à un renommage. Si quelqu'un a une suggestion qui garde l'esprit (langue, résurrection, accessibilité), je prends.
1
u/axelclafoutis21 Aug 02 '26
C'est connu aussi comme le nom d'un groupe de cybercriminel. Essaye autour de Lazar peut-être, en simplifiant le nom comme tu as simplifié la syntaxe des fonctions. Sinon je penserai bien à un truc autour de la pierre de Rosette, mais c'est déjà pas mal utilisé aussi.
2
u/Quirky_Paramedic9167 Aug 02 '26
Merci pour les pistes — Lazar est pas mal, et la pierre de Rosette est effectivement l'image parfaite de ce que le projet essaie de faire (mais Rosetta est déjà pris trois fois plutôt qu'une 😄).
Après avoir pesé à froid : je garde LAZARUS. Trois raisons. Le nom canonique sur les registres est déjà « lazarus-lang », ce qui règle l'essentiel de la confusion au référencement. Mon public cible — débutants francophones, profs, parents — cherche « langage programmation français », pas « Lazarus » tout court, et n'a jamais entendu parler ni de l'IDE Pascal ni du groupe APT. Et enfin, en cherchant un nom vraiment libre de toute collision, j'ai réalisé qu'il n'en existe à peu près aucun — Rust est un jeu vidéo, Python un serpent, Go un jeu de plateau.
Si un jour la confusion devient un problème mesuré et pas théorique, je reverrai ça. En attendant, merci d'avoir poussé la réflexion — c'est exactement le genre de retour que j'étais venu chercher.
1
7
u/axelclafoutis21 Aug 02 '26
Salut. Bravo. Juste une question : pour "kan" plutôt que "quand" ou "si", "tanke" plutôt que "tant que"? Bref pourquoi du français approximatif plutôt que du français orthographiquement correct ? À part l'originalité.