For example, the below code is written in hexadecimal numbers wrapped in C/C++ code. You cannot tell what it does by looking at the code, but it opens a message box on Windows if you run it. Although the computer prefers such low-level codes, it is not easy for humans to write or understand such code. That is why we use high level programming languages to simplify code writing and to make the codes more structured and understandable at design time.
BunnaScript is a multilingual JavaScript and TypeScript programming language that enables you to write computer code in Amharic. The computer doesn’t care what language you use when you write code. Only 0s and 1s make sense to the computer. Must all computer programs be written in English? Technically, no. One can write programs using numbers only.
Programs written in high level languages are converted to machine code (0s and 1s) before running in the system. Therefore, the human language we use to write the source code doesn’t matter to the computer as long as we convert it to machine code before executing.
High level programming languages such as C++, C#, JavaScript, Python, Java, etc., provide a way for writing programs using human languages.
Although there are several high-level programming languages, they are still difficult to understand and write programs with, especially for those who do not speak/write English because most of them are written in English. Some level of proficiency in English is still required to understand/write programs using these modern high-level programming languages. Having to learn English first can be a barrier to learn programming for millions of people in the world, especially for children and young adults.
Amharic is the national language of Ethiopia that descends from the ancient language of Geez. Amharic uses its own scripting called Ethiopic. So, BunnaScript has a built-in keyboarding module for non-English scripts.
Programmers can mix languages while writing programs and get full documentation in both English and the target language. The editor compiles both language programs without error. This may be useful if programmers want to get documentation of pre-written English source codes in their native language.