ABSTRACT

Programming languages originated with the need for an easier and more productive method for programming early computer systems. The goal was to use abstraction to hide both the target hardware and internal structural complexity of a program. Hiding hardware allowed for programs to move between different computer platforms without significant modifications by relying on the compiler developer to understand the mapping of language abstractions onto specific targets. Hiding software complexity allowed for programs to become better organized and more complex by hiding the tedium of the low-level implementation of common patterns like loops and branches. Abstractions provided by languages included:

• Primitive operations and keywords that may map to a sequence of simpler assembly language operations.