Vous êtes sur la page 1sur 13

VELEUILITE HRVATSKO ZAGORJE KRAPINA

DORIAN VRGO

PROGRAMMING LANGUAGES

SEMINARSKI RAD

KRAPINA, 2013.

VELEUILITE HRVATSKO ZAGORJE KRAPINA

PROGRAMMING LANGUAGES SEMINARSKI RAD

Kolegij: Engleski jezika IV.

Student: Dorian Vrgo 4912058 Smjer: Informatika Status: Redovni

Krapina, lipanj 2013.

II

TABLE OF CONTENTS

INTRODUCTION..............................................................................................................1 1. HISTORY OF PROGRAMMING LANGUAGES.......................................................2 1.1. Generations of programming languages........................................................2 1.1.1. First generation (1GL)..........................................................................2 1.1.2. Second generation (2GL) .....................................................................3 1.1.3. Third generation (3GL) ........................................................................3 1.1.4. Fourth generation (4GL) .....................................................................4 1.1.5. Fifth generation (5GL) ........................................................................4 2. TYPES OF PROGRAMMING LANGUAGES..........................................................5 2.1. Software languages.......................................................................................5 2.1.1. C............................................................................... ...........................5 2.1.2. C++.....................................................................................................6 2.1.3. Visual Basic.........................................................................................6 2.2. Web languages..............................................................................................6 2.2.1. HTML (Hyper Text Markup Language)..............................................6 2.2.2. XML (Extensible Markup Language)..................................................7 2.2.3. PHP.....................................................................................................7 2.2.4. Java.....................................................................................................7 2.3. Procedural programming languages...........................................................7 2.3.1. Structured programming languages...................................................8 2.4. 3. 4. Object oriented programming languages....................................................8

CONCLUSION.......................................................................................................9 SOURCES..............................................................................................................10

III

INTRODUCTION
Programming language is a set of grammatical rules for instructing a computer to do specific tasks. Programming languages can be used to create programs that control behavior of a computer. English and other natural languages are not used as programming languages because they cannot be easily translated into machine language. Programmers use special software called compiler to compile a code and convert it to machine language.
Generally, there are two types or programming languages. Low-level and high-level programming language. Low level programming language provides little or no abstraction from microprocessor. High-level programming language is more abstract, more portable across platforms and generally easier to use. Abstraction, in computer science, is the way data and programs are defined with similar meaning.

1.

HISTORY OF PROGRAMMING LANGUAGES

In the 1940s first digital computers were created and Grace Hopper was one of the first programmers of the Harvard Mark I computer. Around 1952, he developed the first compiler for a computer programming language. Programmes of early 1950s computers used machine language programs known as first generation language (1GL). 1GL was quickly replaced by assembly languages, known as second generation languages (2GL). Later in 1950s assembly language had evolved to include macro instructions and was followed by the development of third generation language (3GL) such as FORTRAN and COBOL. Third generation language was more abstract and portable. Updated versions of 3GLs are still in use today and they strongly influenced the development of later languages. Following the upward trend towards higher abstraction, fourth generation languages (4GL) were introduced. Term 4GL was first formally used by James Martin in 1982 in his book Applications Development Without Programmers. 4GL was followed by fifth generation programming languages (5GL). 5GLs provide a graphical interface called visual programming environment for creating source codes.

1.1.

Generations of programming languages

The evolution of programming languages is typically discussed in terms of generations of languages. Historically, this classification was used to indicate increasing power of programming styles. There are currently five generations of programming language.

1.1.1.

First generation (1GL)

A first generation programming language is a grouping of low-level languages used to program first-generation computers with the instructions made of binary numbers. Originally, no translator was used to compile the language. Instead, programming instructions were entered through the front panel switches of the computer system, directly

to the CPU. The code in 1GL can run very fast and efficiently becouse the instructions are going directly to the CPU but when an error occurs, the code is not so easy to fix. Modern tools, such as native-code compilers are used to produce machine level from a higher-level language.

1.1.2. Second generation (2GL)

A second generation programming language is a grouping of programming languages associated with assembly languages. Unlike the first generation languages, programs can be written symbolically using English words in a way that humans can understand. Programs can then be converted into machine language by an assembler, a special program that translates assembly language into a machine language. Assembly langauges are the interface between a low-level languages and high-level languages. 2GLs are often used in extremely intensive processing like games, rendering, video editing etc., but are sometimes used in kernels and device drivers.

1.1.3. Third generation (3GL)

Third generation of programming languages is a refinement of a 2GL to make it more programmer-friendly wich means that computer is taking care of non-essential details. 3GLs use a series of English-like words, that are closer to human languages, to write instructions. Unlike second and first generation, third generation of programming languages are high-level languages. Programs written in high-level language are easier and simpler to write, read and maintain. First introduced in late 1950s, COBOL, ALGOL and Fortran are early examples of 3GLs. Some of third generation languages like C, C++, BASIC or PASCAL are among most popular general-purpose languages today.

1.1.4. Fourh generation (4GL)

Fourth generation programming language enables users to access data in database. 4GL is a very high-level language often referred to as goal-oriented programming language because it is usually limited to specific application and it might use syntax that is never used in other programming languages. Since 3GL development can be slow and errorprone, it became clear that some applications could be developed faster by adding a higherlevel programming language which would be equivalent to very complicated 3GL instruction but with fewer errors. 4GL projects are more oriented toward problem solving and system engineering. There are diffrent types of 4GLs: a) Table-driven programming, usually running with runtime framework and libraries. Insted of using code, developer defines his logic by selecting an operation in a pre-defined memory commands b) Report-generator programming languages take a discription of the data format and the report to generate and from that they generate the required report c) Forms generators manage online interaction with the application system users or generate programs to do so. d) Fourth generation enviroments are more ambitious 4GLs that are attempting to automatically generate whole systems. e) Data managment 4GLs provide coding coding commands for data manipulation, file reshaping, case selection and data documentation.

1.1.5. Fifth generation (5GL)

Fifth generation of programming language is, like fourth generation, more oriented toward problem solving and system engineering. 5GLs are based on solving problems using constraints given to the program, rather than using an algorithm written by a

programmer. While 4GLs are designed to build specific programs, 5GLs are designed to make a computer solve a problem without the need of a programmer. This way, the programmer doesn't need to worry about how to implement a routine or algorithm to solve them. 5GLs allow people to interact with a computer without the need of any special knowledge. 5GLs represent the future of programming language and are being used for artificial intelligence, neural networks, plasma computing etc. However, starting from a set of constraints defining a particular problem cannot yet be automated and still requires a human programmer. Prolog and Mercury are the best known fifth generation languages.

2. TYPES OF PROGRAMMING LANGUAGES

Since this is dynamic and evolving field, there is no single standard for classifying programming languages. One of the most fundamental ways of characterizing programming languages is by programmers view of code execution. For the purpose of this term paper, programming languages are split into four categories: procedural programming languages, object oriented programming languages, web languages and software languages.

2.1.

Software languages Software language is used to create executable programs. It can create anything

from entire operating systems to simple executables that print some text on the screen. Some of the most known are: C, C++ and VisualBasic.

2.1.1. C C is a language used for general purpose developed by Dennis Ritchie in the 1970's at Bell Labs. It was originally designed to be systems programming language but since then it turned out to be able to be used for software applications such as business programs,
5

engineering programs and even games. UNIX operating system is completely written in C. C can also be put under a Procedural programming languages category.

2.1.2. C++ C++ evolved from C and it was developed by Bjarne Stroustrup. It was originally named C with classes, because object oriented futures were implemented. It was renamed to C++ in 1983. C++ is one of the most popular programming languages and is used in wide variety of hardware and OS platforms. Its application domains include device drivers, application software, system software, client applications, high-preformance servers and entertainment software such as video games. 2.1.3. Visual Basic Visual Basic is a third generation language developed by Microsoft. It is based on BASIC and is used for creating Windows applications. VBScript language, also developed by Microsoft, is based on Visual Basic.

2.2.

Web languages

Web language is used for creating and editing web pages. It can do anything from putting plain text on a web page, to accessing and retrieving data from database. Some of the most known web languages are HTML, XML, PHP, Java etc. 2.2.1. HTML (Hyper Text Markup Language) HTML is a core language of world wide web. It is used to define structure and layout of web pages. Although its a fundamental language of the web, HTML is static, meaning that content created with it does not change.

2.2.2. XML (Extensible Markup Language) XML works like HTML but allows for custom tags that are defined by programmers. XML allows for the transmission of data between applications. 2.2.3. PHP PHP is a powerful language used for data encryption, database access and form validation. It was developed in 1994. by Rasmus Lerdorf. 2.2.4. Java Java is a powerful and flexible language created by Sun MicroSystems that can be used to create applets programs executed from within another program. Applets can run inside web pages as well as software applications. With Java you can interact with other users, create graphical programs, read from files etc. Java is often confused with javascript but they are two different languages. Java can also be put under Software languages category because of its flexibility.

2.3.

Procedural programming languages Procedural programming specifies a list of operations that the program must

complete to reach the desired state. This is one of the simpler programming ways, where a program is represented much like a cookbook recipe. Each program has a starting state, a list of operations to complete, and an ending point. Procedures, also known as functions, are small sections of code that preform a function. In procedural programming language, a problem is broken into parts and each part is then broken into further parts which are controlled by a main program. Some of the most known procedural oriented languages are FORTRAN, BASIC and C.

2.3.1. Structured programming languages Structured programming is a special type of procedural programming that provides additional tools to manage problems that larger problems are creating. It requiers programmers to break program structure into small pieces of code that can be easily unerstood. Most popular structured programming languages include C and Pascal.

2.4.

Object-oriented programming languages In object-oriented programming, data types are representing data structures that are

defined by the programmer. 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. Data types defined by programmer are called classed. For example, a programmer can create data type that represents car car class. This class can contain properties of a house 8color, model, year etc.) and functions that specify what the car does (drive, reverse, stop etc.) It is one of the newest and most powerful types of programming. The most popular object-oriented programming languages include Java, Visual Basic, C#, C++, and Python.

3. Conclusion
All in all, programming is a dynamic field that is evolving very fast and new languages are being crated every day. The choice of which language to use depends on the type of computer the program has to run on, what sort of program is it and the expertise of the programmer.

4. SOURCES
http://en.wikipedia.org/wiki/Programming_language http://landofcode.com/programming-intro/computer-programming-languages.php http://www.giac.org/cissp-papers/97.pdf http://learningarea5.blogspot.com/2010/07/generations-of-programming-language.html http://passcisa.blogspot.com/2008/09/five-generations-of-programming.html http://www.webopedia.com/TERM/P/programming_language.html

10

Vous aimerez peut-être aussi