An Introduction to and Overview of Computer Programming Languages
An Introduction to and Overview of Computer Programming Languages
INTRODUCTION
In this section, programming languages will be discussed, and the evolution of the various languages and programming paradigms will be traced. The way in which computers are programmed has a direct influence on how computation is thought. Consequently, the fundamental concepts of programming languages constitute an essential body of knowledge in computer science, and these principles are essential to programmers, software specialists, computer scientists, and, to a degree, to humanities scholars that employ programming tools and languages in their work (Louden & Lambert, 2011).
Operating Systems
Before proceeding, however, the important concept of an operating system must be discussed. Most users are familiar with the general principles of operating systems. They are aware that Microsoft Windows or Mac OS X are such systems. They also know that these systems control the overall operation of the computer system. Specifically, the operating system (OS) of a computer is the central system software in the computer system. The OS is the primary way in which the system “communicates” with users. It starts the system software and applications as needed and/or requested by the user. Frequently, users access the OS through a graphical user interface (GUI), a visual interface to operating system or to other system software/applications. Microsoft Windows is an example of a GUI-based operating system. The OS also allows
I/O systems to communicate with various devices (Schneider & Gersting, 2018).
System commands are user instructions specifying actions to be taken by the computer. One may consider the OS as the “receptionist” and “dispatcher” in a computer system. From user commands, system software is scheduled and executed. Often, users employ text-based system commands that are entered at a prompt at a terminal or computer screen. Such operations can, for instance, be entered through the command prompt accessible from Microsoft Windows (by entering cmd at the Windows prompt). The command language implemented by an OS must be learned by users, and, consequently, many users employ GUI-based system commands through a visual/mouse interface (Schneider & Gersting, 2018).
Operating systems also provide system security and protection. They permit only authorized access to resources. The OS therefore acts as a “security guard”. For individual users, access is protected via usernames and passwords. Additionally, sensitive data, such as passwords, are encrypted (coded into a format unreadable to potential threats) to increase security. The OS also maintains authorization lists for folders (directories) and files. File permissions for which authorization can be granted include reading a file, adding to, or modifying a file, and deleting a file (Schneider & Gersting, 2018).
The OS is also responsible for efficient allocation of resources. The goal is to utilize the CPU as much as possible