Alkhawarizm (en arabe : ) est le premier langage de programmation système natif conçu pour l'alphabet arabe, destiné aux applications à haute performance. Nommé d'après le polymathe Al-Khwarizmi, ce langage se distingue des autres langages éducatifs arabes répertoriés car il compile directement en code machine, plutôt que de servir de transpileur ou d'interface pour des langages basés sur l'anglais comme Python.

Histoire Alkhawarizm a été développé pour combler le fossé entre les locuteurs natifs arabes et le développement de systèmes de bas niveau. Le projet vise à fournir un environnement professionnel permettant de concevoir des systèmes d'exploitation, des pilotes de périphériques, et des systèmes embarqués en utilisant une syntaxe arabe.

Premiers développements et génération d'assembleur En 2010, le compilateur Alkhawarizm a franchi une étape technique majeure avec la génération directe de langage assembleur selon les principes de l'architecture des compilateurs classiques. Ce changement a permis au langage de dépasser le cadre purement éducatif pour produire du code de bas niveau conforme au format standard ELF.

Cette version initiale a établi les bases de l'architecture actuelle de l'écosystème, qui est désormais auto-hébergée (self-hosted).

Le développement est principalement hébergé sur GitHub, le compilateur central et un assembleur dédié constituant l'épine dorsale de l'écosystème. En 2020, le langage a atteint la version 1.8.0, normalisant ses fonctionnalités modernes et améliorant la compatibilité avec les normes de sécurité logicielle.

Conception et fonctionnalités Le langage suit une philosophie de « souveraineté technique », visant à rendre les développeurs arabophones indépendants des syntaxes étrangères pour les infrastructures critiques.

Syntaxe et philosophie de conception Alkhawarizm synthétise les performances des langages système de bas niveau avec la lisibilité des langages de script modernes. Bien que son architecture soit modélisée sur celle du C pour l'efficacité, sa syntaxe est influencée par l'approche minimaliste de Python et Swift.

Assurance logicielle et sécurité Un pilier central d'Alkhawarizm est l'assurance logicielle (Software Assurance) s'appuyant sur des bases de typage formelles. Contrairement aux langages système traditionnels qui privilégient la performance au détriment de la sécurité, Alkhawarizm intègre plusieurs garde-fous mécaniques : Intégrité stricte du typage : Pour garantir un comportement prévisible, le langage interdit la conversion de type implicite. Les développeurs doivent explicitement utiliser l'opérateur (as), réduisant ainsi les risques de corruption de données silencieuse ou de dépassement de capacité (overflow). Sécurité mémoire : Le compilateur et l'assembleur auto-hébergé sont conçus pour offrir des niveaux élevés d'assurance mémoire, visant la conformité avec des normes critiques comme MISRA C. Syntaxe facilitant la vérification : En adoptant une grammaire légère, le langage réduit le « bruit syntaxique », rendant les revues de code et les processus de vérification formelle plus efficaces.

Syntaxe La syntaxe est structurée autour de mots-clés arabes. Voici un exemple de programme « Hello World » :

استعمل الخوارزم.وسائط.شاشة

} ( ) الدالة الاصل

اكتب("مرحبا بك في لغة الخوارزم") {

Outils et intégration IDE L'écosystème comprend une suite de développement professionnelle conçue pour l'ingénierie système à grande échelle utilisant les protocoles de serveurs de langage standards.

Alkhawarizm Studio L'environnement de développement intégré (IDE) intègre des outils avancés : Language Server Protocol (LSP) : Un serveur de langage personnalisé fournit des fonctionnalités intelligentes (coloration syntaxique, diagnostics d'erreurs en temps réel, autocomplétion) optimisées pour l'écriture de droite à gauche (RTL). Débogueur intégré : Un débogueur natif permet de définir des points d'arrêt, d'inspecter les adresses mémoire et d'exécuter le code arabe ligne par ligne. Support DAP : En utilisant le Debug Adapter Protocol, le débogueur garantit une expérience cohérente sur différentes plateformes.

Implémentation Le projet a atteint l'auto-hébergement, une technique héritée des compilateurs historiques : Assembleur Alkhawarizm : L'assembleur responsable de la génération des binaires exécutables est lui-même écrit en Alkhawarizm avec des mnémoniques arabes. Bootstrapping : Le langage a été initialement développé à l'aide d'un langage hôte (tel que C) pour créer la première version du compilateur.

Voir aussi Langage de programmation non basé sur l'anglais Al-Khwarizmi

Références « Non-English-based programming languages », sur en.wikipedia.org (consulté le 3 avril 2026). Niklaus Wirth, « The Design of a Pascal Compiler », Software: Practice and Experience, 1971. « Language Server Protocol Specification », sur microsoft.com (consulté le 3 avril 2026). « Executable and Linkable Format (ELF) Specification », Tool Interface Standard (TIS), 1995. Aho, Lam, Sethi et Ullman, « Compilers: Principles, Techniques, and Tools », Addison-Wesley, 2006. Benjamin C. Pierce, « Types and Programming Languages », MIT Press, 2002.

Liens externes

GitHub

Catégorie:Langage de programmation Catégorie:Langage de programmation système Catégorie:Logiciel sorti en 2010