Fundamentals of Computer Systems (8hrs) · Computer Fundamentals & Emerging Technologies

high-level programming languages

Watch lectures

High-level programming languages

1. Definition

A high-level language (HLL) is a programming language whose instructions are written in a form close to English and mathematics, and which is independent of the machine it will run on. A program written in C, Java or Python does not mention registers, addresses or opcodes; those details are supplied later by a compiler, interpreter or virtual machine. Examples: C, C++, Java, Python, C#, JavaScript, Go, Rust, FORTRAN, COBOL.

2. Characteristics

  • Readability — total = price * qty; instead of MVI A, ... sequences.
  • Machine independence (portability) — the same source, recompiled, runs on x86, ARM or a microcontroller.
  • Abstraction — data types (int, float, string, array), functions, classes, exception handling.
  • Structured / modular programming — loops, conditionals, procedures, object orientation improve clarity.
  • Rich standard libraries — file I/O, maths, networking, graphics, databases ready-made.
  • Less code per task — one statement expands to hundreds of machine instructions.
  • Compile-time checking — syntax, type and scope errors caught early, which shortens debugging.
  • Easier maintenance and team work — readable code, documentation, version control.
  • Debugging support — symbolic debuggers show variable names and source lines, not raw addresses.

3. Levels of Languages (Generations)

Level / Gen Also called Translation Example
1GL — Machine Binary code None 1000 0101 …
2GL — Assembly Symbolic machine code Assembler MOV A, B
3GL — High-level procedural Problem oriented Compiler / interpreter C, FORTRAN, COBOL, Java, Python
4GL — Very high-level Task oriented, non-procedural Interpreter / DB engine SQL, MATLAB, Excel formulas
5GL — Logic / AI Constraint-based Inference engine Prolog, LISP, AI shells

4. Broad Classification of HLLs

Paradigm Idea Examples
Procedural Program = sequence of procedures acting on data C, Pascal, FORTRAN
Object oriented Program = objects (data + methods), inheritance, polymorphism C++, Java, C#, Python
Functional Program = evaluation of functions, no side effects Lisp, Haskell, Erlang
Logic Program = facts and rules; engine infers answers Prolog
Scripting Small, interpreted automation languages Python, JavaScript, PHP, Bash
Concurrent / parallel Explicit processes and communication Ada, Go, Erlang
Query / markup (declarative) Describe what, not how SQL, HTML/XML, CSS
  hello.c   ──(compiler)──►  hello.obj  ──(linker + libraries)──►  hello.exe  ──(loader)──►  RAM
  (source)                    (object)                            (executable)              (running)

  hello.py  ──(interpreter)───────────────────────────────────────────────────────────►  output
  (source)      translates and executes line by line, no .exe created

7. Advantages and Limitations

Advantages Limitations
Easy to learn, write, read and maintain Slower and larger than hand-written machine/assembly code
Portable across machines and OSs Less direct control over hardware, registers and timing
Fewer errors, better debugging tools Needs a translator (compiler/interpreter) present
Libraries and frameworks speed up development Unsuitable where microseconds or every byte matter (interrupt handlers, boot ROM)
Reusable, team-friendly, huge ecosystem Abstraction can hide performance problems

8. Exam Points

  • Define a high-level language; list any five characteristics — 5 marks, frequent.
  • Difference between low-level and high-level languages (with examples) — 5 marks.
  • Explain the generations of languages (1GL-5GL) with examples — 5 marks.
  • List the paradigms of HLLs with one example each — 3-5 marks.
  • Draw the compilation process from source to executable (compiler → linker → loader) — 5 marks.
  • Why are HLL programs portable while machine language programs are not? — 3 marks.
Student FinanceWeb Platform

Pocketly — Personal Finance for Students

Keep your hostel and college expenses under control. Track accounts, log spending in seconds, and stay within your monthly budget.

← All Computer Fundamentals & Emerging Technologies modules

high-level programming languages — Computer Fundamentals & Emerging Technologies — PYQDeck