Dev Tools
Desktop GUI
Contact Me
>> My Blog
Alusus Programming Language

Alusus is a programming language that is flexible, comprehensive, and decentralized. It's open to all programming methodologies by allowing anyone to upgrade and enhance it without limitations, without permission or coordination with a cetral team, without needing to rebuild or redistribute the compiler, and most importantly without needing to persuade the users to update their development environments or settings.

Why Alusus Language?

The first question that might come to mind is: what will I gain from using Alusus rather than something else? Alusus language is still in development and the current release is a very early release targetting contributors rather than end users. But Alusus is designed to be able to:

  • Expand vertically to cover low level features like those in C++ as well as high level features like those found in languages like Python or Ruby.
  • Expand horizonatally to cover all aspects of programming which saves the user having to use more than one language.
  • Allow anyone to enhance the language in a decentralized way, which allows users to develop new programming techniques or paradigms without having to start from scratch with a new language.
  • Take the technology out of the way for code designers. Users will be able to design their code based purely on their code's functionality rather than having to split their code around technology boundaries.

    Imagine being able to write your client side code, server side code, DB access code, GPU shaders, etc, all in one language. Imagine switching between programming paradigms becomes a matter of picking up a different library rather than a different language. Imagine writing your program in a high level language while still being able to switch to low level for performance critical components. This is what Alusus language is designed to achieve.

    Technical Features:

    The design of Alusus has many advantages like:

  • Allow the language to support all programming specialties by providing different libraries for different specialties, instead of needing different languages for different specialties.
  • Liberate the programmers from needing to use multiple languages inside the same project, which increases the quality of the program and reduces the development cost and simplifies the cooperation between different teams within the project.
  • Allow the architects to design their programs based on their functional requirements rather than the requirements of the tools needed to build them.
  • Simplify the utilization of computer resources for maximum performance.
  • Allow the community to participate in the development of the language and simplify that process.
  • Allow the language to support more features without complicating the syntax.
  • Simplify the setup of development environments.
  • Simplify the reuse of packages and libraries and reduces the need to rewrite libraries.
  • Allow mixing more software technologies inside the same program.
  • Simplify developing applications independently from execution environments.
  • Allow the programmer from working at different levels depending on the need of his application. Depending on the libraries in use, the language can act as a high level language, a low level language, or a mixture of the two.
  • Provide more flexibility in controlling the results of the compilation. For example, you can generate an executable file, interpret the source code and execute it on the fly, or mix the two like generating an executable file and running unit tests on the fly during compilation.

    My Role: Founder and lead software engineer
    Date: 2006-Present
    Platform: Linux
    Website: http://alusus.net

    © Sarmad Khalid Abdullah. All Rights Reserved.