Evolution of programming languages:
Assembly LanguageCPU and operating system specific. Referred to as low level languages because their language was not far removed from machine language. Difficult to learn and use.
Structured ProgrammingCan be compiled for different CPUs and operating systems. Provides a more logical structure than assembly language, programming code is written in precise segments, with well-defined beginnings and ends.
Object-Oriented ProgrammingAllows pieces of code (objects) to be re-used throughout the program. Eliminates the need to write new code for common functions. Instead, programmers can re-use objects already written.
Visual ProgrammingEliminates the need to type code line-by-line by providing a graphical user interface allowing programmers to drag-and-drop objects and commands to create the code.
Cross-Platform OperabilityAllows a single version of the program to run on multiple operating systems.
Natural LanguageSyntax is flexible, allowing commands to be written as "regular" sentences with descriptive language. Eliminates need to learn coding language in order to create computer programs.
Artificial IntelligenceSystem is given the ability to "learn" and to program itself as necessary to add new functionality.