12/19/11

COMPUTER LANGUAGES



As we human beings communicate with each others in different language such as HINDI, French, English and Arabic etc. Similarly to communicate with the computers we have to use specific languages and for this purpose hundreds of languages have been develop in which few of them has gained international reputation. C language is one of them,. Language can be categories broadly into three categories.
  • MACHINE LANGUAGE:  The most elementary and first type of computer, which was invented, was machine language. Machine language was machine dependent. A program written in machine language cannot be run on another type of computer without significant alterations. Machine language is some times also referred as the binary language i-e, the language of 0 and 1 where 0 stands for the absence of electric pulse and i stands for the presence of electric pulse. Very few computer programs are actually written in machine language.
  • ASSEMBLY LANGUAGE: As computer became more popular, it became quite apparent that machine language programming was simply too slow slow tedious for most programmers. Assembly languages are also called as low level language instead of using the  string of members programmers began using English like abbreviation to represent the elementary operation. The language provided an opportunity to the programmers to use English like words that were called MNEMONICS.

HIGH LEVEL LANGUAGE:  The assembly languages started using English like words,m but still it was difficult to learn these languages. High level languages are the computer language in which it is much easier to write a program than the low level language. A program written in high level language is just like gibing instruction to person in daily life. It was in 1957 that a high level language called FORTRAN was developed by IBM which was specially developed for scientist and engineers other high level languages are COBOL which is widely used for business data processing task.BASIC language which is developed for the beginners in general purpose programming language. you Can use C language for almost any programming task. PASCAL are other high level languages which has gained widespread acceptance.


Web languages
Used for creating and editing pages on the web. Can do anything from putting plain text on a webpage, to accessing and retrieving data from a database. Vary greatly in terms of power and complexity.
·         HTML 
Hyper Text Markup Language. The core language of the world wide web that is used to define the structure and layout of web pages by using various tags and attributes. Although a fundamental language of the web, HTML is static - content created with it does not change. HTML is used to specify the content a webpage will contain, not how the page functions. Learn HTML at our
 HTML tutorials section.
·         XML 
Extensible Markup Language. A language developed by the
 W3C which works like HTML, but unlike HTML, allows for custom tags that are defined by programmers. XML allows for the transmission of data between applications and organizations through the use of its custom tags.
·         Javascript 
A language developed by Netscape used to provide dynamic and interactive content on webpages. With Javascript it is possible to communicate with HTML, create animations, create calculators, validate forms, and more. Javascript is often confused with Java, but they are two different languages. Learn Javascript at our
 Javascript tutorials section.
·         VBScript 
Visual Basic Scripting Edition. A language developed by Microsoft that works only in Microsoft's Internet Explorer web browser and web browsers based on the Internet Explorer engine such as FlashPeak's
 Slim Browser. VBScript Can be used to print dates, make calculations, interact with the user, and more. VBScript is based on Visual Basic, but it is much simpler. Learn VBScript at our VBScript tutorials section.
·         PHP 
Hypertext Preprocessor (it's a recursive acronym). A powerful language used for many tasks such as data encryption, database access, and form validation. PHP was originally created in 1994 By Rasmus Lerdorf. Learn PHP at our
 PHP tutorials section.
·         Java 
A powerful and flexible language created by Sun MicroSystems that can be used to create applets (a program that is executed from within another program) that run inside webpages as well as software applications. Things you can do with Java include interacting with the user, creating graphical programs, reading from files, and more. Java is often confused with Javascript, but they are two different languages. Learn Java at our
 Java tutorials section.
Software languages
Used for creating executable programs. Can create anything from simple console programs that print some text to the screen to entire operating systems. Vary greatly in terms of power and complexity.
·         C 
An advanced programming language used for software application development. Originally developed by Dennis Ritchie at Bell Labs in the 1970's and designed to be a systems programming language but since then has proven itself to be able to be used for various software applications such as business programs, engineering programs, and even games. The UNIX operating system is written in C.
·         C++ 
Descendant of the C language. The difference between the two languages is that C++ is object-oriented. C++ was developed by Bjarne Stroustrup at Bell Labs and is a very popular language for graphical applications.
·         Visual Basic 
A language developed by Microsoft based on the BASIC language . Visual Basic is used for creating Windows applications. The VBScript language (also developed by Microsoft) is based on Visual Basic.
·         Java 
A powerful and flexible language created by Sun MicroSystems that can be used to create applets (a program that is executed from within another program) that run inside webpages as well as software applications. Things you can do with Java include interacting with the user, creating graphical programs, reading from files, and more. Java is often confused with Javascript, but they are two different languages. Learn Java at our Java tutorials section.
The different generations of languages
There are currently five generations of computer programming languages. In each generation, the languages syntax has become easier to understand and more human-readable.
·         First generation languages (abbreviated as 1GL) 
Represent the very early, primitive computer languages that consisted entirely of 1's and 0's - the actual language that the computer understands (machine language).
·         Second generation languages (2GL) 
Represent a step up from from the first generation languages. Allow for the use of symbolic names instead of just numbers. Second generation languages are known as assembly languages. Code written in an assembly language is converted into machine language (1GL).
·         Third generation languages (3GL) 
With the languages introduced by the third generation of computer programming, words and commands (instead of just symbols and numbers) were being used. These languages therefore, had syntax that was much easier to understand. Third generation languages are known as "high level languages" and include C, C++, Java, and Javascript, among others.
·         Fourth generation languages (4GL) 
The syntax used in 4GL is very close to human language, an improvement from the pervious generation of languages. 4GL languages are typically used to access databases and include SQL and ColdFusion, among others.
·         Fifth generation languages (5GL) 
Fifth generation languages are currently being used for neural networks. A nueral network is a form of artifical intelligence that attempts to imitate how the human mind works.
Procedure-oriented programming
A type of programming where a structured method of creating programs is used. With procedure-oriented programming, a problem is broken up into parts and each part is then broken up into further parts. All these parts are known as procedures . They are separate but work together when needed. A main program centrally controls them all.
Some procedure-oriented languages are COBOL, FORTRAN, and C.
Object oriented programming
A type of programming where data types representing data structures are defined by the programmer as well as their properties and the things that can be done with them. With object-oriented programming, programmers can also create relationships between data structures and create new data types based on existing ones by having one data type inherit characteristics from another one.
In object-oriented programming, data types defined by the programmer are called classes (templates for a real world object to be used in a program). For example, a programmer can create a data type that represents a car - a car class. This class can contain the properties of a car (color, model, year, etc.) and functions that specify what the car does (drive, reverse, stop, etc.)
Some object-oriented languages are C++, Java, and PHP.

Types of Computer Languages with their Advantages and Disadvantages


COMPUTER LANGUAGES

In all over the world, language is the source of communication among human beings. Different countries/regions have different languages. Similarly, in order to communicate with the computer user also needs to have a language that should be understood by the computer. For this purpose, different languages are developed for performing different types of work on the computer.Basically, languages are divided into two categories according to their interpretation.
1. Low Level Languages.
2. High Level Languages.


Low Level Languages
Low level computer languages are machine codes or close to it. Computer cannot understand instructions given in high level languages or in English. It can only understand and execute instructions given in the form of machine language i.e. language of 0 and 1. There are two types of low level languages:
·         Machine Language.
·         Assembly Language
Machine Language: It is the lowest and most elementary level of Programming language and was the first type of programming language to be Developed. Machine Language is basically the only language which computer Can understand. In fact, a manufacturer designs a computer to obey just one Language, its machine code, which is represented inside the computer by a String of binary digits (bits) 0 and 1. The symbol 0 stands for the absence of Electric pulse and 1 for the presence of an electric pulse . Since a computer is Capable of recognizing electric signals, therefore, it understand machine Language.

Advantages of Machine Language

i) It makes fast and efficient use of the computer.
ii) It requires no translator to translate the code i.e.Directly understood by the computer
Disadvantages of Machine Language:
i) All operation codes have to be remembered
ii) All memory addresses have to be remembered.
iii) It is hard to amend or find errors in a program written
In the machine language
iv) These languages are machine dependent i.e. a particular
Machine language can be used on only one type of computer

Assembly Language

It was developed to overcome some of the many
inconveniences of machine language. This is another low level but a very important language in which operation codes and operands are given in the form of alphanumeric symbols instead of 0’s and l’s. These alphanumeric symbols will be known as mnemonic codes and can have maximum up to 5 letter combination e.g. ADD for addition, SUB for subtraction, START,LABEL etc. Because of this feature it is also known as ‘Symbolic Programming Language’. This language is also very difficult and needs a lot of practice to master it because very small
English support is given to this language. The language mainly helps in compiler orientations. The instructions of the Assembly language will also be converted to machine codes by language translator to be executed by the computer.

Advantages of Assembly Language

i) It is easier to understand and use as compared to machine language.
ii)It is easy to locate and correct errors.
iii) It is modified easily

Disadvantages of Assembly Language

i) Like machine language it is also machine dependent.
ii) Since it is machine dependent therefore programmer Should have the knowledge of the hardware also.

High Level Languages

High level computer languages give formats close to English language and the purpose of developing high level languages is to enable people to write programs easily and in their own native language environment (English). High-level languages are basically symbolic languages that use English words and/or mathematical symbols rather than mnemonic codes. Each instruction in the high level language is translated into many machine language instructions thus showing one-to-many translation

Types of High Level Languages

Many languages have been developed for achieving different variety of tasks, some are fairly specialized others are quite general purpose.
These are categorized according to their use as
a) Algebraic Formula-Type Processing. These languages are oriented towards the computational procedures for solving mathematical and statistical problem
Examples are
·          BASIC (Beginners All Purpose Symbolic Instruction Code).
·          FORTRAN (Formula Translation).
·          PL/I (Programming Language, Version 1).
·          ALGOL (Algorithmic Language).
·          APL (A Programming Language).
b) Business Data Processing:
·         These languages emphasize their capabilities for maintaining data processing procedures and files handling problems. Examples are:
·           COBOL (Common Business Oriented Language).
·           RPG (Report Program Generator
c) String and List Processing: These are used for string manipulation including search for patterns, inserting and deleting characters. Examples are:
·         LISP (List Processing).
·         Prolog (Program in Logic).
d)Object Oriented Programming Language
In OOP, the computer program is divided into objects. Examples are:
·          C++
·          Java
e) Visual programming language: these are designed for building Windows-based applications Examples are:
·         Visual Basic
·         Visual Java
·         Visual C

Advantages of High Level Language

Following are the advantages of a high level language:
·         User-friendly
·         Similar to English with vocabulary of words and symbols
·         Therefore it is easier to learn.
·         They require less time to write.
·         They are easier to maintain.
·         Problem oriented rather than 'machine' based.
·         Program written in a high-level language can be translated into many machine language and therefore can run on any computer for which there exists an appropriate translator.
·         It is independent of the machine on which it is used i.e.Programs developed in high level language can be run on any Computer

Disadvantages of High Level Language


·          A high-level language has to be translated into the machine language by a translator and thus a price in computer time is paid.
·         The object code generated by a translator might be inefficient Compared to an equivalent assembly language program


The Different Kinds of Computer Programming Languages


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.

 Programming language

 A vocabulary and set of grammatical rules for instructing a computer to perform specific tasks. The term programming language usually refers tohigh-level languages, such as BASIC, C, C++, COBOL, FORTRAN, Ada, andPascal. Each language has a unique set of keywords (words that it understands) and a special syntax for organizing program instructions.
High-level programming languages, while simple compared to human languages, are more complex than the languages the computer actually understands, called machine languages. Each different type of CPU has its own unique machine language.
Lying between machine languages and high-level languages are languages called assembly languages. Assembly languages are similar to machine languages, but they are much easier to program in because they allow aprogrammer to substitute names for numbers. Machine languages consist of numbers only.
Lying above high-level languages are languages called fourth-generation languages (usually abbreviated 4GL). 4GLs are far removed from machine languages and represent the class of computer languages closest to human languages.
Regardless of what language you use, you eventually need to convert your program into machine language so that the computer can understand it. There are two ways to do this:.
·  compile the program
·                           ·interpret the program
See compile and interpreter for more information about these two methods.
The question of which language is best is one that consumes a lot of time and energy among computer professionals. Every language has its strengths and weaknesses. For example, FORTRAN is a particularly good language for processing numerical data, but it does not lend itself very well to organizing large programs. Pascal is very good for writing well-structured and readable programs, but it is not as flexible as the C programming language. C++ embodies powerful object-oriented features, but it is complex and difficult to learn.
The choice of which language to use depends on the type of computer the program is to run on, what sort of program it is, and the expertise of the programmer.

No comments:

Post a Comment