A programming language is an artificial language designed for humans to create precise instructions that control computers, enabling software development in a human-readable manner. Its execution typically involves either compilation, where programs are translated to machine code ahead-of-time, or interpretation, where they are executed directly, with hybrid approaches also common.
The evolution of these languages moved from early first-generation (machine language) and second-generation (assembly language) systems, which were closely tied to hardware. A significant revolution occurred with third-generation high-level languages, such as Fortran, invented in 1957. These languages introduced abstraction, hiding hardware details to make programming more human-comprehensible and efficient. Unlike natural languages intended for human communication, programming languages specifically enable people to control a computer's behavior.