Un langage de programmation moderne avec des mots-clés français qui se compile vers Nim et génère des exécutables natifs performants.
FranceScript est un langage de programmation conçu pour les développeurs francophones qui souhaitent coder dans leur langue maternelle. Il combine la simplicité syntaxique du français avec la performance du langage Nim, permettant de créer des applications natives rapides et efficaces.
- Syntaxe française : Utilisez des mots-clés comme
fonction,variable,classe,si,sinon, etc. - Performance native : Compilation vers Nim puis vers des exécutables natifs
- Orienté objet : Support complet des classes, constructeurs et méthodes
- Développement web : Serveur HTTP intégré avec système de routage
- Multiplateforme : Compatible macOS, Windows et Linux
- Interopérabilité Nim : Intégration directe de code Nim avec les blocs
@nim
- Nim (version 2.0 ou supérieure) - Installation de Nim
# Cloner le dépôt
git clone https://github.com/FranceScript/FranceScript.git
cd FranceScript
# Installer les dépendances et construire le projet
nimble install_localCréez un fichier hello.fr :
ecrire("Bonjour le monde !")
francescript hello.frvariable nom = "Alice"
variable age = 25
variable actif = vrai
fonction saluer(nom) {
retourner "Bonjour " + nom + " !"
}
fonction calculer(a, b) {
retourner a + b
}
classe Personne ouvrir
constructeur(nom, age) ouvrir
ceci->nom egal nom
ceci->age egal age
refermer
fonction sePresenter() ouvrir
retourner "Je suis " + cette->nom + ", j'ai " + ceci->age + " ans"
refermer
refermer
variable alice egal nouveau Personne("Alice", 30)
ecrire(alice->sePresenter())
nimble test- Lancer les testsnimble build- Construire le transpileurnimble install_local- Installer le binairefrancescriptlocalement
Consultez le dossier examples/ pour des exemples complets :
console_simple.fr- Exemple d'entrées/sorties consoleweb_simple.fr- Serveur web avec routage
francescript/
├── src/
│ ├── main.nim # Point d'entrée du transpileur
│ ├── lexer.nim # Analyseur lexical
│ ├── parser.nim # Analyseur syntaxique
│ ├─��� codegen.nim # Générateur de code
│ └── stdlib/ # Bibliothèque standard
│ ├── console.nim
│ ├── conversion.nim
│ └── web_server.nim
├── examples/ # Exemples de code
└── francescript.nimble # Configuration du projet
Les contributions sont les bienvenues ! Voici comment contribuer :
- Fork le projet
- Créez une branche pour votre fonctionnalité (
git checkout -b feature/ma-fonctionnalite) - Committez vos changements (
git commit -am 'Ajouter ma fonctionnalité') - Pushez vers la branche (
git push origin feature/ma-fonctionnalité) - Ouvrez une Pull Request
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
- Équipe Nim pour le formidable langage de compilation cible
Évidemment, ce langage est un projet humoristique et n'est pas destiné à un usage sérieux. Il est conçu pour être amusant et démontrer la flexibilité de Nim !