Engineering in Kenya

Programming Languages

Posted by on Jun 8, 2018 in Physics | 0 comments

The introduction of computer led to the need of developers and scientist to develop and come up with programming languages that enables the user to communicate with the computer. Programming languages is a computer language made by programmers with the aim of identifying errors in the code  flagged by the compile-time or run-time of the computer system and then muddle through and eventually fix things up to work correctly. There have being a lot of development in programming languages as the computer generation have continued to develop which has led the programmers and expert to develop formula translation (FORTRAN), JAVA, Common Business Oriented Language (COBOL), Beginner’s All-purpose Symbolic Instruction Code (BASIC), C, object orientated programming (OOP), Pascal and C++ programming languages. Engineering in Kenya has more topics.

The programming languages act as bridge between the human and the computer because the computer thinks in terms of ones and zeros which are incomprehensible by humans. Computers process data under the control of sets of instructions called computer programs and these programs guide the computer through orderly sets of actions specified by people called computer programmers using programming language. Programmers write instructions in various programming languages, some directly understandable by computers and others requiring intermediate translation steps. Hundreds of computer languages are in use today and these may be divided into three general types of computer programming languages

468x60 002 Programming Languages
  • Machine programming languages
  • Assembly programming languages
  • High level programming languages

468x60 002 Programming Languages

 Programming LanguagesType of Computer Programming Languages

Any computer can directly understand only its own machine language which is the “natural programming language” of a computer and as such is defined by its hardware design. Machine language is often referred to as object code and this term predates “object-oriented programming.” Machine programming languages generally consist of strings of numbers, ultimately reduced to 1s and 0s, that instruct computers to perform their most elementary operations one at a time. Machine programming languages are machine dependent such that a particular machine language can be used on only one type of computer and such languages are cumbersome for humans in computer programming language.

Machine programming language was simply too slow, tedious and error-prone for most programmers. Instead of using the strings of numbers that computers could directly understand, programmers began using English-like abbreviations to represent elementary operations. These abbreviations formed the basis of assembly programming languages and translator programs called assemblers were developed to convert early assembly language programs to machine language at computer speeds. Although such code is clearer to humans, it is incomprehensible to computers until translated to machine programming language. The following section of an assembly language program adds overtime pay to base pay and stores the result in gross pay:

load     base pay
add      overpay
store    gross pay

Computer usage increased rapidly with the advent of assembly programming languages, but programmers still had to use many instructions to accomplish even the simplest tasks. To speed the programming process, high-level languages were developed in which single statements could be written to accomplish substantial tasks. Translator programs called compilers convert high-level programming language programs into machine programming language. High level languages allow programmers to write instructions that look almost like everyday English and contain commonly used mathematical notations. A payroll program written in a high level programming language might contain a statement such as

gross Pay = base Pay + overtime Pay;

From the programmer’s standpoint, obviously, high level programming languages are preferable to machine and assembly language. C, C++, Microsoft’s .NET languages such as Visual Basic .NET, Visual C++ .NET and C# and also Java are among the most widely used high-level programming languages. The process of compiling a high level language program into machine language can take a considerable amount of computer time therefore interpreter programs were developed to execute high level language programs directly, although much more slowly. Interpreters are popular in program development environments in which new features are being added and errors corrected. Once a program is fully developed, a compiled version can be produced to run most efficiently programming language.

The History of C and C++ Programming Languages

C++ programming language is an extension of C, which was developed by Bjarne Stroustrup in the early 1980s at Bell Laboratories. C++ programming language provides a number of features that spruce up the C language, but more importantly, it provides capabilities for object oriented programming. C++ programming language evolved from C, which evolved from two previous programming languages, BCPL and B. BCPL was developed in 1967 by Martin Richards as a language for writing operating systems software and compilers for operating systems. Ken Thompson modeled many features in his language B after their counterparts in BCPL and used B to create early versions of the UNIX operating system at Bell Laboratories in 1970.

The C programming language was evolved from B by Dennis Ritchie at Bell Laboratories. C programming language uses many important concepts of BCPL and B. It initially became widely known as the development language of the UNIX operating system and today, most operating systems are written in C and or C++ programming language. With careful design, it is possible to write C programs that are portable to most computers and it is now available for most computers and is hardware independent of computer programming language.

The widespread use of C programming language with various kinds of computers sometimes called hardware platforms unfortunately led to many variations. This was a serious problem for program developers, who needed to write portable programs that would run on several platforms therefore a standard version of C was needed. The American National Standards Institute (ANSI) cooperated with the International Organization for Standardization (ISO) to standardize C programming language worldwide; the joint standard document was published in 1990 and is referred to as ANSI / ISO 9899: 1990. Applications written in C often could be run with little or no modification on a wide range of computer systems because C was standardized, hardware-independent, widely available programming language.

The C++ Programming Language

The programming language contains systems that generally consist of three parts: a program development environment, the language and the C++ Standard Library. C++ programs typically go through six phases: edit, preprocess, compile, link, load and execute. The C++ program development environment in the C++ Programming language consists of pieces called classes and functions. Each piece can be programmed to form a C++ program however; most C++ programmers take advantage of the rich collections of existing classes and functions in the C++ standard library in programming language.

Thus, there are really two parts to learning the C++ programming language world, first is learning the C++ language itself; the second is learning how to use the classes and functions in the C++ Standard Library for programmers who need a deep understanding of the ANSI C library functions that are included in C++, how to implement them and how to use them to write portable code.  Current versions of C++, Microsoft Visual C++ 6, such as Microsoft’s Visual C++ .NET, GNU C++ on Linux and Borland’s C++Builder, have similar capabilities and are several popular C++ programming language development tools.

Importance of Learning Programming Languages

Most people are at least somewhat familiar with the exciting things computers do but using the knowledge of programming language it is now possible to learn how to command computers to do those things. Computers often referred to as hardware are controlled by software that is, the instructions written to command the computer to perform actions and make decisions. C++ programming language is one of today’s most popular software development languages. These instructions for the command in programming are always written in the version of C++ standardized in the United States through the American National Standards Institute (ANSI) and worldwide through the efforts of the International Organization for Standardization (ISO) in C++ programming language.

Experienced C++ programmers sometimes take pride in being able to create some weird, contorted, convoluted usage of the programming language. Over the years, many programmers learned the programming methodology called structured programming and an exciting newer methodology, object oriented programming. Object orientation is the key programming methodology used by programmers today. In learning the programming language it is possible to create and work with many software objects, the logic of manipulating objects and discover however, that their internal structure is occasionally expressed and often built using structured programming language techniques.

Ideally, the principal components of the C++ programming language learnt by programmers are; what the .NET Framework consists of and the advantages it offers, what solutions and projects are and how you create them, about console programs, how to create and edit a program, how to compile, link, and execute C++ console programs and how to create and execute basic Windows programs in programming languages.