History of Programming Languages

 Programming languages:

A programming language is an artificial language designed to express computations that can be performed by a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine, to express algorithms precisely, or as a mode of human communication.

World’s first computer programmer: (Ada Lovelace)

The progression of computer programming languages was made possible by the programmer’s search for efficient translation of human language into something that can be read and understood by computers. The languages generated, called machine code, have high levels of abstraction, which hide the computer hardware and make use of representations that are more convenient to programmers.

As programs evolve and become more sophisticated, programmers found out that certain types of computer languages are easier to support. As expected in a dynamic discipline, there is no standard for categorizing the languages used in programming. There are, in fact, dozens of categories. One of the most basic ways to categorize the languages is through a programming paradigm, which gives the programmer’s view of code execution. Among the languages classifications according to programming paradigm are:

o Object-Oriented Programming Languages:
Known as the newest and most powerful paradigms, object-oriented programming requires the designer to specify the data structures as well as the types of operations to be applied on those data structures. The pairing of data, and the operations that can be done on it is called an object. A program made using this language is therefore made up of a set of cooperating objects instead of an instructions list.

The most famous object-oriented programming these days are C#, C , Visual Basic, Java, and Python. 

o Structured Programming Languages:

 An exceptional type of procedural programming, structured programming provides programmers with additional tools to handle the problems created by larger programs. When using this language, programmers are required to cut program structure into small pieces of code that can easily be understood. Instead of using global variables, it employs variables that are local to every subroutine. Among the popular features of structured programming is that it doesn’t accept GOTO statement which is usually associated with the top-down approach. Such approach starts with an opening overview of the system with minimal details about the various parts. To add these details, design iterations are then included to complete the design.

Commonly used structured languages include C, Pascal, and ADA.

o Procedural Programming Languages:

Procedural Programming involves a list of operations the program needs to complete to be able to attain the preferred state. It is a simple programming paradigm where every program comes with a starting phase, a list of tasks and operations, and an ending stage. Also called imperative programming, this approach comes with small sections of code that perform certain functions. These sections are made up of procedures, subroutines, or methods. A procedure is made up of a list of computations that should be done. Procedural programming lets a part of the code to be used again without the need to make several copies. It achieves this by dividing programmatic tasks into small sections. Because of this, programmers are also capable of maintaining and understanding program structure.

Among the known procedural languages are BASIC and FORTRAN.

These are the different types of computer programming languages that you can consider when planning to make a computer program. Procedural programming splits the program’s source code into smaller fragments. Structured languages require more constraints in the flow and organization of programs. And object-oriented programs arrange codes and data structures into objects. 

Some important languages that were developed in this period include:

  • 1951 – Regional Assembly Language
  • 1952 – Autocode
  • 1954 – FORTRAN (Formula Translator)
  • 1954 – IPL (forerunner to LISP)
  • 1955 – FLOW-MATIC (forerunner to COBOL)
  • 1957 – COMTRAN (forerunner to COBOL)
  • 1958 – LISP (List Processor)
  • 1958 – ALGOL 58
  • 1959 – FACT (forerunner to COBOL)
  • 1959 – COBOL (Common Business Oriented language)
  • 1962 – APL
  • 1962 – Simula
  • 1962 – SNOBOL
  • 1963 – CPL (forerunner to C)
  • 1964 – BASIC (Beginner’s All-purpose Symbolic Instruction Code)
  • 1964 – PL/I
  • 1967 – BCPL (forerunner to C)
  • 1968 – Logo
  • 1970 – Pascal
  • 1970 – Forth
  • 1972 – C
  • 1972 – Smalltalk
  • 1972 – Prolog
  • 1973 – ML
  • 1975 – Scheme
  • 1978 – SQL (initially only a query language, later extended with programming constructs)
  • 1980 – C++ (as C with classes, name changed in July 1983)
  • 1983 – Objective-C
  • 1983 – Ada
  • 1984 – Common Lisp
  • 1985 – Eiffel
  • 1986 – Erlang
  • 1987 – Perl
  • 1988 – Tcl
  • 1989 – FL (Backus)
  • 1990 – Haskell
  • 1991 – Python
  • 1991 – Visual Basic
  • 1993 – Ruby
  • 1993 – Lua
  • 1994 – CLOS (part of ANSI Common Lisp)
  • 1995 – Java
  • 1995 – Delphi (Object Pascal)
  • 1995 – JavaScript
  • 1995 – PHP
  • 1997 – Rebol
  • 1999 – D
  • 2001 – C#
  • 2001 – Visual Basic .NET
  • 2002 – F#
  • 2003 – Scala
  • 2003 – Factor
  • 2006 – Windows Power Shell
  • 2007 – Clojure
  • 2007 – Groovy
  • 2009 – Go

Prominent people in the history of programming languages:

  • John Backus,  inventor of Fortran.
  • Alan Cooper, developer of Visual Basic.
  • Edsger W. Dijkstra, developed the framework for structured programming.
  • James Gosling, developer of Oak, the precursor of Java.
  • Anders Hejlsberg, developer of Turbo Pascal, Delphi and C#.
  • Grace Hopper, developer of Flow-Matic, influencing COBOL.
  • Kenneth E. Iverson, developer of APL, and co-developer of J along with Roger Hui.
  • Bill Joy, inventor of vi, early author of BSD Unix, and originator of SunOS, which became Solaris.
  • Alan Kay, pioneering work on object-oriented programming, and originator of Smalltalk.
  • Brian Kernighan, co-author of the first book on the C programming language with Dennis Ritchie, coauthor of the AWK and AMPL programming languages.
  • John McCarthy, inventor of LISP.
  • John von Neumann, originator of the operating system concept.
  • Dennis Ritchie, inventor of C (programming language). Unix Operating System , Plan 9 Operating System.
  • Bjarne Stroustrup, developer of C++.
  • Ken Thompson, inventor of B , Go Programming Language , Inferno Programming Language.
  • Niklaus Wirth, inventor of Pascal, Modula and Oberon.
  • Larry Wall, creator of Perl and Perl 6
  • Guido van Rossum, creator of Python
  • Yukihiro Matsumoto, creator of Ruby

Leave a comment