Fill This Form To Receive Instant Help

Help in Homework
trustpilot ratings
google ratings


Homework answers / question archive / I have noticed that there are many languages, is this because no one language has all the major elements needed to be a perfect programming Language? What major features should a perfect programming language include? I am trying to understand the concepts and struggling

I have noticed that there are many languages, is this because no one language has all the major elements needed to be a perfect programming Language? What major features should a perfect programming language include? I am trying to understand the concepts and struggling

Computer Science

I have noticed that there are many languages, is this because no one language has all the major elements needed to be a perfect programming Language? What major features should a perfect programming language include? I am trying to understand the concepts and struggling.

pur-new-sol

Purchase A New Answer

Custom new solution created by our subject matter experts

GET A QUOTE

Answer Preview

I have written the following, complete from scratch. Hope it helps in gaining insight into programming language features.

Programming language is a way of communicating with the computer by providing instructions in a structured manner. These instructions are then converted to machine language, a digital code oriented language that the underlying computer hardware can understand. Consequently, just like natural language, a perfect programming language is often elusive, it differs because of style, ease of use, vocabulary, syntax and popularity. However, any good programming language must have few major features:

1. Readability: A good programming language should have a structure that is human readable and understandable. For example, Lisp has a unique syntactic construct which makes it very easy to become familiar with. On the other hand a cryptically written C++ program may be quite difficult for you to read, even though you're familiar with the language. This is because different C++ programmers can use different subsets of the language.

2. Expressiveness: Another important criterion is how much information can a language convey through it's keywords and syntax. If a language is not expressive enough then it may not be suitable for writing programs involving difficult or complex algorithms. The expressiveness of a program is often compared with Turing computer[1]. Any programming language that can simulate a Turing machine is capable of expressing any algorithm. However, not all programming languages are Turing complete, for example, Adobe's Portable Document Format (PDF), which started as a non-Turing-complete subset of PostScript. We do not call them programming languages because they are not meant for general purpose use.

3. Speed: This is an important measure, especially since computer programs have entered every sphere of human life, including system critical components in a hospital, navigation system of a plane or satellite, control system of an industry, guidance system of a missile and so on. In each of these cases, it is vital that the computer program respond in a timely and predictable manner. In practice some programming languages are often slower than others. It is often complained that Object Oriented (OO) programs are slower than Procedural programs because of the bulk of extra code that needs to be processed in OO design. However, there is another speed involved, the speed of development of the program and in this case OO very easily outperforms it's Procedural counterpart.

4. Scalability and Portability: Scalability refers to the ability of a program to be executed without difficulty regardless of the size of the program or the size and performance of the computer that it's used on. For example, you can write a small C program as well as a large C program that can both run on a Microcomputer or a Supercomputer. Portability refers to the ability of a program to be executed across different platforms in a platform-independent manner. Several programming languages including Java, C/C++ are portable because they offer a consistent interface of writing programs and compilers that can create object code for different machines in a transparent manner.

[1] http://en.wikipedia.org/wiki/Church-Turing_thesis

Related Questions