Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>OrunmilangNew to Visual Studio Code? Get it now.
Orunmilang

Orunmilang

Malik Kolawole Lanlokun

| (0) | Free
Orunmilang is a Yoruba programming language. This VS Code extension offers syntax highlighting, validation, and a run command to develop and execute Orunmilang scripts seamlessly.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Orunmilang Logo

Orunmilang

Orunmilang is a minimal, beginner-friendly programming language inspired by the syntax and linguistic structure of Yoruba, a major African language spoken by millions in Nigeria 🇳🇬, Benin 🇧🇯, Togo 🇹🇬, and parts of Ghana 🇬🇭, Ivory Coast 🇨🇮, Sierra Leone 🇸🇱, and The Gambia 🇬🇲. Designed to teach programming fundamentals through culturally relevant constructs, Orunmilang bridges the gap between technology and indigenous knowledge systems. The name Orunmilang derives from Yoruba words: òrúnmìlà (the deity of wisdom and divination in Yoruba spirituality) and ọ̀rọ̀ (word or language), symbolizing a "language of wisdom." This reflects its mission to empower learners by making coding intuitive and culturally resonant.

Orunmilang was created as part of a master’s coursework project in Open Source Software at Nankai University, China, in 2025. It aims to democratize programming education by offering a tool that resonates with African and diasporic learners while being accessible to anyone interested in culturally inspired computing. In a world where technology often reflects Western paradigms, Orunmilang promotes diversity in tech by embedding Yoruba linguistic patterns, such as verb-object structures and tonal expressiveness, into its syntax. This makes it a powerful educational tool and a potential domain-specific language (DSL) for cultural computing, fostering inclusivity and representation in the global tech landscape.

License: MIT Contributions Welcome

🌍 Vision & Roadmap

Orunmilang aims to make programming inclusive by blending coding with Yoruba linguistic structures. It serves as an educational tool and potential domain-specific language (DSL) for cultural computing. Future goals include expanding the type system, adding data structures, and deepening cultural relevance.

Short-term Goals:

  • Add list/array support

  • Implement basic file I/O

  • Expand standard library

Long-term Vision:

  • Full Yoruba localization

  • Visual programming interface

  • Educational materials in Yoruba/English

🧩 Orunmilang for VS Code

To enhance your development experience, Orunmilang is now available as a Visual Studio Code extension! This extension provides:

  • ✅ Syntax highlighting
  • ✅ Language snippets
  • ✅ Error diagnostics
  • ✅ Integrated language support

🔧 Extension Installation

Option 1: Marketplace Installation

  1. Open Visual Studio Code
  2. Go to the Extensions sidebar (Ctrl+Shift+X)
  3. Search for: Orunmilang
  4. Click Install on the extension by lanlokun

Option 2: Manual Installation via .vsix

If you've downloaded the .vsix file (e.g. orunmilang-0.0.1.vsix), install it using the command below:

code --install-extension orunmilang-0.0.1.vsix

Once installed, open or create a supported file (.oru, .orun, .orunmilang, or .yo) to get started!

📝 Supported File Extensions: .oru, .orun, .orunmilang, .yo

✨ Features

Core Language Features

✅ Variable Declaration (pa): Declare variables with initial values
✅ Variable Assignment (fi): Update variable values
✅ Print Output (tẹ): Display text, numbers, or variable values
✅ Arithmetic Operations: +, -, *, /, %
✅ Conditionals (ti/bí kò ṣe): If/else-if/else statements
✅ Loops (nigba): While loops
✅ Functions (iṣẹ/pe/pada): Define and call reusable functions
✅ Comments: Single-line documentation

Tooling Features

✅ CLI Support: Run programs with error reporting
✅ Type Checking: Runtime type validation
✅ Yoruba Keywords: Culturally relevant syntax

Cultural Elements

  • Yoruba keywords and syntax structure
  • Support for Yoruba diacritics in strings
  • Culturally relevant error messages

Core Programming Constructs

  • pa - Variable declaration (pa oruko pẹlu "Lanlokun")
  • fi - Variable assignment (fi oruko "Malik")
  • tẹ - Print output (tẹ("Kaabo!"))
  • ti/bí kò ṣe - If/else conditionals
  • nigba - While loops
  • iṣẹ/pe - Function definition and calls

📜 Example Program

// Calculate the square of a number
iṣẹ square(num) {
    pada num * num;
}

pa x pẹlu 10;
pa y pẹlu 5;
pa sum pẹlu x + y;      // 15
pa squared pẹlu pe square(x);  // 100

tẹ("Sum:");
tẹ(sum);
tẹ("Square of x:");
tẹ(squared);

ti (sum > 20) {
    tẹ("Sum is large");
} bí kò ṣe {
    tẹ("Sum is small");
}

Output:

Sum:
15
Square of x:
100
Sum is small

🧠 Language Syntax

🔸 Variable Declaration


pa <name> pẹlu <value>;  // Numbers, strings, or booleans

Variable Assignment


fi <name> <value>;  // Update existing variable

Print Statement

tẹ(<value>);

Arithmetic Operations

<value1> + <value2>  // Addition
<value1> - <value2>  // Subtraction
<value1> * <value2>  // Multiplication
<value1> / <value2>  // Division
<value1> % <value2>  // Modulo

Control Flow

ti (age > 18) ṣe {
    tẹ("O ti tobi!");    // "You're grown!"
} bí kò ṣe {
    tẹ("O tun kekere");  // "You're still young"
}

pa i pẹlu 0;
nigba (i < 5) ṣe {
    tẹ(i);
    fi i i + 1;
}

Functions


iṣẹ greet(oruko) {
    pada "Kaabo, " + oruko;
}

tẹ(pe greet("Lanlokun"));  // Kaabo, Lanlokun

Comments


// Single-line comment

🚧 Current Limitations

Feature Status Notes
Arrays/Objects ❌ Not supported Support for lists and objects is planned for future versions
Static Typing ❌ Runtime only No compile-time type checking; types are checked at runtime
Standard Library ❌ Minimal built-ins Very limited functions available; more will be added
Multi-line Comments ❌ Single-line only Only // single-line comments supported for now

🛠️ Installation


git clone https://github.com/Lanlokun/orunmilang.git
cd orunmilang
npm install 
npm link
npm run build

🚀 Usage

orunmilang example.orun

🤝 Contributing

Contributions are welcome! To contribute:

  • Fork the repository.
  • Create a branch: git checkout -b feature/your-feature.
  • Commit changes: git commit -m "Add your feature".
  • Push to the branch: git push origin feature/your-feature.
  • Open a pull request.

📜 Code of Conduct

We are committed to fostering an inclusive community. Please adhere to the Contributor Covenant Code of Conduct. Report unacceptable behavior to mlanlokun@gmail.com.

📈 Project Status

Orunmilang is in active development, with core features (arithmetic, conditionals, loops, functions) stable. It’s suitable for educational use but lacks advanced features like arrays or a standard library. Contributions to address limitations are encouraged.

🧑🏽‍💻 Author

Crafted with love by Malik Kolawole Lanlokun. Reach out via GitHub to collaborate or share ideas.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

📝 Report Issues: GitHub Issues

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft