CSCi 372
Assignment 01
1. What are the different Language Evaluation Criteria?
A language evaluation criterion is broadly used to measure how usable a programming language is. This includes four main criteria and many characteristics alongside.
Readability: defines the ease of understandability of a programming language. Include many factors such as below. * Simplicity – strongly affects readability. A language with few basic constructs is much easier to learn. Feature multiplicity and operator overloading are potential problems of simplicity. * Orthogonality – a language with few primitive constructs can only be combined in small number of ways to create the control and data structures. Relatively close …show more content…
What are the different Language categories?
Imperative Languages: usually procedure-oriented paradigm is used with imperative languages. Features include variables, assign statements and control statements. Examples for pure imperative languages are C, Perl, and Ruby. All the object-oriented paradigm based languages are evolved from imperative languages such as Java.
There is subcategory as visual languages on the imperative languages. These visual languages gives ability of generate GUIs easily by drag and drop. All .NET languages such as VB.NET and C++, C# categorized into here.
Scripting languages such as JavaScript, Perl and Ruby are considered as imperative languages too.
Functional Languages: paradigm that apply functions into computation and consider as evaluation of mathematical functions. Basically means applying functions to given parameters. Widely used in academic purposes rather than commercial software industry. Functional programming avoids side-effects, referential transparency. Very different from imperative programming languages. Examples for functional languages are LISP, Scheme, Haskell and …show more content…
In logic languages, rules are not defined into great details as in imperative languages. Rules are specified in no particular order, so implementation must use the language to achieve desired results. Based on idea of using logical sentences to represent programs and perform computations. A very common example is Prolog for a logic language. Object-oriented Languages: mainly features as same as the imperative languages because these languages are evolved from imperative languages. The specialty rests on the object-oriented concepts in these languages. Widely used for every kind of software programming and the most commonly used languages are considered to these languages. Java, C#, C++ and Python are few examples. 3. What are the differences between Compilation, Interpretation and Hybrid implementation Systems?
Compilation: programs are translated into machine code which can directly execute on the computer. Compiler analyzes the whole code and generates the machine code which makes it very fast process. And due to this, compiled programs don’t require any second application or package to run it. The time takes to create a program from compilation is relatively faster than interpretation. As a disadvantage, compilation process is hardware specific into which machine it get compiled. Architecture of the computer affects