Merits of High Level Languages -> High level languages are easy to design and understand. -> Portable and user friend platforms -> No need to remember the corresponding Binary equivalent code Demerits of High Level Languages The demerits of High Level languages are very few in compared with the merits of it. One of the drawback of High level language is its performance i.e. The processing performance is slower then machine level languages as High Level Language needs to be converted into machine readable format by the use of compiler or interpreter.
Advantages of High-Level Language – It has several advantages over machine language and assembly language.
- Machine Independent – High-level languages are machine independent. This is a very valuable advantage because it means that a company changing computers even one from a different manufacturer, will not be required to rewrite all the programs that it is currently using.
- Easy to Learn and Use – These languages are very similar to the languages normally used by us in our day-to-day life. Hence they are easy to learn and use.
- Fewer Errors – In case of high-level languages, since the programmer need not to write all the small steps carried out by the computer, he is much less likely to make an error.
- Lower Program Preparation Cost – Writing programs in high-level languages requires less time and effort which ultimately leads to lower program preparation cost.
- Better Documentation – A high-level language is designed in such a way that its instructions may be written more like the language of the problem. Thus the statements of a program written in a high-level language can be easily understood by a person familiar with the problem.
- Easier to Maintain – programs written in high level language are easier to maintain then assembly language or machine language programs.
Limitations of High-level Languages – Two disadvantages of high-level languages are –
- Lower Efficiency – Generally a program written in assembly language or machine language is more efficient than one written in high-level language. That is, the program written in high – level language take more time to run and require more main storage.
- Less Flexibility – Generally, high-level languages are less flexible than assembly languages, because they do not normally have instructions or mechanism to control the computer’s CPU, memory and registers. An assembly language provides the programmers access to all the special features of the machine they are using. Certain types of operations, which are easily programmed using the assembly language, are impractical to attempt using a high-level language. This lack of difficulty means that some tasks cannot be done in a high level language, or can be done only with great difficulty.