Computer programming languages are broadly categorized into 2 types namely – High Level Language and Low Level Language. Abbreviation for High Level Language is HLL and Low Level Language is LLL. The former language is pretty popular with developers and some example of HLL are Ruby, C, C++, BASIC and JAVA including others. HLL allows users/developers to communicate with a computer for doing a job via a syntax that is easy and intuitive to understand. Compared to High Level language, Low Level Language is less readable by humans and difficult to understand and learn, still easier and faster for the computer to comprehend. Infact, LLL requires hardware knowledge unlike HLL. Some of examples of Low level Language are Machine language and Assembly language.
High level programming languages are more structured and more spontaneous than low level languages. Additionally, it requires translation and execution which is pretty time consuming. Contrary to HLL, LLL does not require translation support and execution time is pretty fast. In terms of modification of programs, Low level Language is at downside, since High level language is customizable and it becomes pretty easy to modify programs written in HLL. One more area where high level language scores over low level language is wrt abstraction where it allows more abstraction while the latter provides very little to negligible abstraction.
Some scenarios where LLL has upper hand are Hardware level proximity and Memory Usage. Many facilities are not provided at hardware level by HLL whereas LLL is supportive of writing program at hardware level. Furthermore, high level language utilizes substantial amount of memory during processing and execution, while on the other hand, low level language employs minimal memory in running and executing.
The above shared differences between High level language and Low level language are enlisted in below given table –