Programming Languages

Topic Progress:
What is a Programming Language?
A programming language is designed to communicate instructions to a computer and so the computer can interpret the instructions and make sense of them. They are used to create programs that control the behavior of a machine and algorithms. There are multiple languages created into this program which are created from different styles or forms. The description of a programming language is known to be split into the two components of syntax (form) and semantics (meaning). The syntax is the form in which the language is presented in and the actual sense or meaning of the instructions is the semantics.
A program is written so that it can be understood by computer so that the instructions can be interpreted, translated into so the computer can eventually make sense of it. So the moment you turn on your computer after it starts to run programs, it interprets these instructions, tests the ram and resets all attached devices and loads the operating system from hard disk. Every operation that the computer holds has instructions that someone had to translate into a programming language. With every language, they have to be created, compiled and tested which tends to be a long and complex task.

Categories of Programming Languages
Two categories that programming languages can fall under are procedural (programs that use the procedural approach) and object (for those programs that use the object-oriented approach). However, probably the most common way of categorizing programming languages is by their designation into a tier structure.

Programming languages can fall under low-level languages, high-level languages, and very high-level languages. Low-level languages, which are made up of the first generation language, machine language, and second generation language, assembly language, are written at a very low level: programming consists of 0s and 1s for machine language and assembly language includes names and symbols for some of the 0s and 1s. These languages allow computer hardware to read commands quickly, but this happens at the cost of a much steeper learning curve as opposed to higher level languages.

High-level languages, on the other hand, are easier to use because they are closer to natural language. They are also machine independent: programs written on one computer can be transferred to another computer without modification. This is in contrast to the machine dependent-nature of low-level programs where modification is necessary. Lastly, very high-level languages, also known as fourth-generation programming languages, are more difficult to distinguish from high-level languages. Fourth-generation languages (4GLs) are known to be declarative, which does not specify exactly how a computer should go about processing a command. This results in programmers using very little code. Although, those languages deemed very-high level languages in the past (e.g. Visual Basic, Python, Perl) have now been called simply high-level languages.

There are some high-level programming languages that are visual programming languages or graphical programming languages. They are referred to by these names because they have a graphical interface. In these programs, instead of typing program code, a user can drag and drop objects to generate the needed code. There are even programs that incorporate visual elements that help with coding but also still require actual coding. These kinds of programs are called visual programming environments (VPEs).

One of the first programming languages to use a visual programming environment was Visual Basic. The convenience of visual programming environments is that you can drag and place objects but also with a code is typed, the program assists in creating the code by listing options. These helps users learn appropriate codes. An online definition of visual programming environments describes it as software which allows the use of visual expressions (such as graphics, drawings, and animations or icons) in the process of programming. These visuals items are then used as graphical interfaces for textual programming languages. These kinds of visual programming languages software are also used for educational purposes and in the future may be the most common programming language.

Scratch is one example of an educational visual programming environment for children. As mentioned above, Visual Basic was one of the first programming languages to use visual programming environment, but since then C++, Pascal, and Java have also begun to create visual programming environments.

There are many programming languages out there that are still, to this day, used immensely on a day-to-day basis. Fortran, which is one of the older options, is used mainly in the scientific field for scientists, mathematicians, and formulating numerical formulas. Cobol is another programming language commonly used today, and can typically can be seen utilized in business environments for everyday transactions. This language is seen as extremely time consuming, and more and more businesses today are starting to move away from it, towards quicker processes.

Pascal is yet another language that is used commonly in math and science programs. The Pascal programming language obtained its name from the famous mathematician, Blaise Pascal. It was created by Niklaus Wirth, a member of the International Federation of Information Processing Working Group. He created the Pascal programming language because he wanted to include new features that past programming languages did not provide. It was originally created as a teaching tool and uses control structures in its software. The use of control structures helped the programming language become more structured and organized compared to other languages, which is why it was used as a teaching tool.

Pascal was published in 1971 and revised in 1973, which allowed for it to stay prominent in colleges from the 1970’s and into the late 1980’s. One of the new features of Pascal was the new data types, like Integer, Real, Character, and Boolean. These new types are what allowed Pascal to become a programming language used strongly in mathematic programs. Another new feature was a strong data typing element, which allowed the compilers for Pascal to see and correct an incompatible assignment in one type in accordance to a variable in a different type. This further helped keep the organized structure of Pascal and enabled it to be used more in college level classes. Pascal was a great creation for the programming language world.

Another common programming language is Basic. It is one of the most used languages because it can be considered user friendly. It was designed to be an uncomplicated and stressful language that is used typically for interactive programs. It is extremely easy to get to know, and many people enjoy its simplistic and understandable functioning. One aspect of basic is Visual Basic, which again uses their understandable language, but is focused on visual aid. These are just a few examples of the immense and intricate amount of languages that are out there. Though many of these are still used today, it is obvious that some of the older and more time-consuming software is on its way out.

On the other hand, there are also some programming languages that are no longer widely used today. Among these programming languages are LISP and Prolog. Specified in 1958, LISP (LISt Processing) is the second-oldest high-level programming language, running right behind Fortran. It allows a code to be expressed in the same form as the data structures in the language, which is very beneficial when performing genetic algorithms or symbolic manipulation. On the other hand, in the early 1970s, Prolog was designed for natural language processing, and logical reasoning. This language allowed using similar grammars to translate logical representation back into language. Being a dialect of LISP comes another language used to teach children how to program: The Logo Programming language. To act as a tool for learning, its features included modularity, extensibility, interactivity, and flexibility.

Another third generation programming language not used today is PL/I, “Programming Language 1.” This language was developed as an alternative to Cobol (large-scale business applications) and Fortran (scientific and algorithmic applications). Lastly, and most importantly, comes one of the first object-oriented programming languages: SmallTalk. As there is no such language called SmallTalk any more, other different languages like SmallTalk-xx (the xx being the year that the language was finalized,) have gradually taken its place. Therefore, although new languages such as C, Java, or PHP have now taken over, old programming languages still play a significant role behind the shift to the new and better technology.

Java is a high-level, object-oriented programming language that is designed to let developers write once, run anywhere. This means that the coding does not have to be recompiled for various platforms and can run the same on any system. The language was developed by Sun Microsystems in 1995 and was released to the public as open source software in 2007. Since then, the language has become one of the most popular programming languages in the world, particularly for client-server web applications. Much of the syntax used is derived from other programming languages C and C++.

Java programs are compiled into the bytecode format, which can be run on any computer that runs Java virtual machine no matter how simple or complex the computer’s architecture may be. One popular application for the Java language is Java applets, which are small programs that can be inserted into a web page of a java-enabled web browser. These applets can be used to run games, banner ads, scrolling text, or various other types of programs from inside the browser. These applets are inserted into the HTML statements of the web page just as an image would be added. The applet is downloaded from the host server of the webpage when being displayed, allowing for the program to run on the viewer’s computer.

Python is an open source, dynamic object-oriented programming language. Python can be used to develop a variety of applications, including gaming, database, and Web applications. It’s a freely available programming language and can run on almost any computer without needing to change the program. Python’s compatibility is the reason it’s used daily in the Google search engine, Youtube, NASA, and the New York Stock Exchange. Also, due to its readability, ease of acquisition, and extensibility, Python was recently chosen by MIT for students learning to program.

Another open source object-oriented programming language, often compared to Python, is Ruby. Ruby can be used to create both Web applications and general-purpose programming for Linux, Mac OS X, and Microsoft Windows computers. Similar to Python, Ruby uses a syntax that is relatively easy to read and write. A difference, however, is that Ruby tends to presume upon the programmer’s intentions, while Python’s information is typically plain in syntax. Ruby on Rails (RoR) is a framework for developing dynamic Web applications that are written in the Ruby programming language. RoR applications run on a variety of types of Web servers and with a variety of databases, consequently growing rapidly in use and popularity.

Earn a Certificate of Completion for completing this course. Pass a 50-question test on this course with a score of 70 or higher and receive a certificate of completion. Visit our Computer Information Systems Certificate of Completion page for more information.

The text for this course is available from WikiBooks under the Creative Commons Attribution-ShareAlike License.