Logo Lanfrica

Oussama-jabrane/lfi3a

Domaine:

natural language processing

Type de record:

software
Créateur:
Ous
Hôte:
LFI3A is a beginner-friendly programming language that blends programming concepts with Moroccan Arabic (Darija) vocabulary. Created by Oussama Jabrane as a personal project to break free from the "computer fixer" stereotype. # LFI3A Programming Language Documentation LFI3A (pronounced "lfi-3a") is a beginner-friendly programming language that blends programming concepts with Moroccan Arabic (Darija) vocabulary. Created by Oussama Jabrane as a personal project to break free from the "computer fixer" stereotype, LFI3A offers a unique and culturally-inspired approach to learning programming. ## 📋 Table of Contents - Quick Start - Language Basics - Data Types & Variables - Control Flow - Loops - Functions - Project Structure - Examples - Limitations - Why LFI3A? - Contributing - License ## 🚀 Quick Start ### Installation 1. Clone the repository (if applicable) ```bash git clone github.com cd lfi3a ``` 2. Compile the interpreter: ```bash g++ -std=c++17 src/*.cpp -o lfi3a ``` ### Your First Program Create a file called `hello.lfi3a`: ```lfi3a // My first LFI3A program dir ism = "Oussama" dir age = 25 kteb("Salam", ism, "!") kteb("3ndek", age, "years") ``` Run it: ```bash ./lfi3a hello.lfi3a ``` Output: ``` Salam Oussama ! 3ndek 25 years ``` ## 📖 Language Basics ### Syntax Overview LFI3A is dynamically typed (no need to specify variable types) and uses Darija-inspired keywords. Semicolons are optional. ### Comments ```lfi3a // This is a single-line comment dir x = 5 // Comments can follow code ``` ## 🏷️ Data Types & Variables ### Variable Declaration Use `dir` ("give/put" in Darija) to create variables: ```lfi3a dir number = 42 // Integer dir decimal = 3.14 // Float dir name = "LFI3A" // String dir is_true = s7i7 // Boolean true dir is_false = ghalat // Boolean false ``` ### Strings Strings can be concatenated with `+`: ```lfi3a dir greeting = "Salam" + " " + "Oussama" kteb(greeting) // Output: Salam Oussama ``` ### Boolean Values - `s7i7` = true (literally "correct") - `ghalat` = false (literally " …