ABSTRACT
Software Engineers, Computer Scientists, and Software Experts alike are faced with deciding which programming language is best suited for a certain purpose as the use of programming languages grows.
When we consider the various types of programming languages available today, such as Domain Specific Languages (DSL), General Purpose Languages (GPL), Functional Programming Languages (FPL), Imperative Programming Languages (IPL), and so on, this becomes complicated.
In this study, we introduce BeeX, an interpreted language, with the aim of showing the process and principles involved in language design and consider various choices faced by language designers of various programming languages.
Because BeeX was created with simplicity in mind, the study focused on architectural design options. We look at the implementation standpoint and try to figure out what the basic building parts of most programming languages are, such as lexical analysis, syntax analysis, and evaluation phase.